두 가지 조건에서 여러 테스트를 사용하여 클래스를 실행하려고합니다. 기본적으로 검색과 관련된 여러 가지 테스트가 있습니다. 새로운 검색 전략의 새로운 기능을 추가하면서 동시에 두 구성 모두에서 이미 작성된 테스트를 실행하려고합니다. 각각 여러 테스트를 통해 여러 클래스를 보유하고 있으므로 가능한 한이 프로세스를 간소화하고 싶습니다. 기본적으로 클래스의 모든 테스트가 기본적으로 서로 다른 구성에서 두 번 실행되지만 데이터 공급자와 함께 @BeforeClass에서 설정을 수행하는 것이 좋습니다. 그러나 이것이 가능하지는 않습니다.@BeforeClass를 사용하여 TestNG 데이터 제공
는 지금은이 :
public class SearchTest1 {
@Test(dataProvider = "SearchType")
public void test1(SearchType searchType) {
setSearchType(searchType);
//Do the test1 logic
}
@Test(dataProvider = "SearchType")
public void test2(SearchType searchType) {
setSearchType(searchType);
//Do the test2 logic
}
@DataProvider(name = "SearchType")
public Object[][] createData() {
return new Object[][]{
new Object[] {SearchType.scheme1, SearchType.scheme2}
}
}
}
이 작업을 수행 할 수있는 더 나은 방법이 있나요?
을이 나를 위해 꽤 좋은 방법처럼 보인다. 데이터 제공자를 자체 클래스로 옮기는 것을 제외하고는 모든 사람들이 동일한 것을 참조 할 수 있습니다. – biziclop
실제로 그것이 어떻게 준비되어 있는지입니다. 나는 여기서 그것을 더 쉽게 읽을 수 있도록이 방법으로 썼다. 나는 ~ 268 개의 테스트가있는 ~ 20 개의 클래스가 있음을 언급해야합니다. 나는이 모든 268 개의 줄에이 줄을 쓰는 것을 피하고 싶다. – Clayton