조건부가 enum 메서드를 기반으로하는 경우 단위 테스트에서 모든 조건을 테스트해야합니까?조건부 테스트 Enum 기반
많은 값을 가진 열거 형을 사용하면 단위 테스트가 너무 커서 모든 가능한 조건에 도달 할 수 없습니다.
예 : 모든 열거하고 (어떻게 든) 청소기 방법으로 예상되는 결과를 기록 할 수 있습니다
@DataProvider
public static Object[][] provideEnumasAndExpectedErrorResult() {
return new Object[][] {
{ AnEnum.A, true },
{ AnEnum.B, false }
};
}
@Test
@UseDataProvider("provideEnumasAndExpectedErrorResult")
public void testEnumErrors(AnEnum enumConstant, boolean expectedResult expectedResult) {
assertThat(enumConstant.isError(), is(expectedResult));
: 당신은 같은 ParametrizedTests를 사용 할 수
public enum AnEnum {
A(true), B(false), C(false), D(true);
AnEnum(boolean isError) {
this.isError = isError
}
}
public class TestEnum {
public String method(AnEnum anEnum) {
if(anEnum.isError()) {
return "An Error";
}
return "Not An Error";
}
}
[열거 유형을 테스트하는 방법 (http://stackoverflow.com/questions/1079700/how-to-test-enum- 유형). 또한 [데이터 기반 테스트] (https://spockframework.github.io/spock/docs/1.0/data_driven_testing.html)가 도움이 될 수 있으며 열거 형뿐만 아니라 필요한 경우도 있습니다. – Morfic
게터와 세터 테스트의 요점은 무엇입니까? Java 테스트 중입니까? 테스트를 실제 로직이있는 것으로 제한하십시오. See [Getter 및 Setter에 대한 단위 테스트를 작성해야합니까?] (0120-13997/5221149) – Andreas
이것은 setter 및 getter를 테스트하지 않습니다. 코드에서 가능한 모든 조합을 테스트하려고합니다. 우리는 모든 조합을 테스트해야합니까 아니면 두 가지 조합 만 테스트해야합니까? (이 예에서는 코드가 더 많은 조합을 가질 수있는 반면 코드 조합은 두 가지 조합으로 100 % 코드 적용 범위를 가질 수 있습니다) –