Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- kotlin querydsl
- AI
- 정보처리기사실기 기출문제
- 티스토리챌린지
- IntelliJ
- Pinpoint
- Java
- CloudWatch
- MySQL
- Elasticsearch
- kotlin coroutine
- kotlin
- CKA
- APM
- 정보처리기사 실기
- Spring
- 오블완
- Kubernetes
- Linux
- minikube
- 공부
- AWS EKS
- aws
- CKA 기출문제
- PETERICA
- kotlin spring
- 코틀린 코루틴의 정석
- mysql 튜닝
- 정보처리기사 실기 기출문제
- 기록으로 실력을 쌓자
Archives
- Today
- Total
피터의 개발이야기
[TDD] assertThat 사용법 본문
반응형
assertThat(비교대상, Matcher<? super T> matcher)의 형태로 사용한다.
// 10진수를 n진수로 변환하는 프로그램을 작성하시오.. (단, n의 범위는 2 <= n <= 16)
public String core(int num, int inSu){
String result ="";
LinkedList<Character> resultList = new LinkedList<>();
String arr = "0123456789ABCDEF";
while (num > 0){
resultList.add(arr.charAt(num % inSu));
num = num/inSu;
}
while ( !resultList.isEmpty() ){
result += resultList.pollLast();
}
System.out.println(result);
return result;
}
@Test
public void 오답(){
assertThat(core(21,11), CoreMatchers.is("1A"));
}
static으로 선언하면 문법을 간결하게 할 수 있다.
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
@Test
public void 오답(){
assertThat(core(21,11), is("1A"));
}
JUnit Matcher 종류
allOf
assertThat("myValue", allOf(startsWith("my"), containsString("Val")))
- 내부에 선언된 모든 매쳐가 정상일 경우 통과한다.
anyOf
assertThat("myValue", anyOf(startsWith("foo"), containsString("Val")))
- 내부에 선언된 매쳐중 하나 이상 통과할 경우 통과한다.
bothboth
assertThat("fab", both(containsString("a")).and(containsString("b")))
- A and B 형식으로 matcher를 사용할 수 있게 해 준다.
- A, B 매쳐 둘다 통과할 경우 테스트가 성공한다.
eithereither
assertThat("fan", either(containsString("a")).or(containsString("b")))
- A or B 형식으로 matcher를 사용할 수 있게 해 준다.
- A, B 매쳐 둘중 하나가 성공할 경우 테스트가 성공한다.
describedAs
assertThat (new BigDecimal(“32123”), describedAs("a big decimal equal to %0", equalTo(myBigDecimal), myBigDecimal.toPlainString()));
- 매쳐내부의 메시지를 변경할 수 있다.
is
assertThat("Simple Text", is("Simple Text"));
not
assertThat(cheese, is(not(equalTo(smelly))))
anything
- 항상 true를 반환한다.
hasItem
assertThat(Arrays.asList("foo", "bar"), hasItem("bar"))
- 배열에서 매쳐가 통과하는 값이 하나 이상이 있는지 여부를 검사한다.
hasItems
assertThat(Arrays.asList("foo", "bar", "baz"), hasItems("baz", "foo"))
equalTo
assertThat("foo", equalTo("foo"));
nullValue
assertThat(cheese, is(nullValue())
- 비교값이 null일경우 테스트가 통과한다.
containsString
assertThat("myStringOfNote", containsString("ring"));
- 특정 문자열이 있는지를 검사한다.
startsWith
assertThat("myStringOfNote", startsWith("my"))
- 특정 문자열로 시작하는지를 검사한다.
endsWith
assertThat("myStringOfNote", endsWith("Note"))
- 특정 문자열로 종료되는지를 검사한다.
반응형
'Programming > Spring' 카테고리의 다른 글
[Spring] PDF의 첫장 섬네일 만들기 (0) | 2020.12.24 |
---|---|
[Spring] PDF을 이미지 파일로 변환하기 (0) | 2020.12.23 |
[Spring] War 배포와 Jar 배포 시 resource 참조 문제 (0) | 2020.12.14 |
Spring Profiles (0) | 2020.12.12 |
[Spring] Jackson Annotations (0) | 2020.12.10 |
Comments