2017-11-27 5 views
2

테스트 메소드를 매개 변수화하는 방법을 찾고 있습니다. 저는 JUnit을 사용하고 있습니다. 몇 가지 방법으로 단위 테스트를하는 방법을 찾고 싶습니다. TestNG의 DataProvider를 사용하면 쉽게 할 수 있습니다. 테스트 클래스 내의 일부 메소드를 테스트하기위한 시나리오를 제공 할 수 있습니다. JUnit의 매개 변수화 된 대안을 사용하면 할 수 있지만 그 범위는 전체 클래스이지만 하나의 테스트 메소드로 범위를 축소해야합니다. 그 방법이 있을까요?JUnit 테스트 메소드의 매개 변수화 된 대체 방법

답변

4

JUnit 5를 사용해 보셨습니까? 원하는 것을 포함하여 매개 변수화에 대한 지원이 훨씬 향상되었습니다.

@ParameterizedTest 
@ValueSource(strings = { "Hello", "JUnit" }) 
void test(String word) { 
    assertNotNull(word); 
} 

특히 나는 매우 유용한 CsvSource` @ '를 발견, https://blog.codefx.org/libraries/junit-5-parameterized-tests/

+0

감사를 참조하십시오. – rastaman

+0

예, CSV 기능에 대해서도 매우 흥분했습니다. 큰 값의 테스트 값을 제공하는 우아한 방법. –

+0

'@ MethodSource'는 제가 필요로하는 것과 정확히 똑같습니다 :-) – rastaman