2017-03-10 3 views
-1

하나의 테스트 스위트를 성공적으로 작성하고 다시 작성 했으므로 이제 한 개의 테스트 스위트를 새로 작성하고 이제 첫 번째 테스트 스위트 'Test'메소드를 호출하려고한다. 이 새로운 제품군. 가능한가?셀 니아의 한 스위트에서 다른 스위트 룸으로 테스트 메소드를 호출하는 방법 TestNG

시나리오 : 응용 프로그램에 로그인하기위한 하나의 테스트 스위트를 만들고 내 세부 사항을 추가하기위한 테스트 스위트를 하나 만들었습니다. 두 번째 제품군의 경우 두 번째 제품군 작업을 수행 할 수 있도록 첫 번째 제품군을 호출해야합니다. 이 방법에 대해 안내해 주시겠습니까?

답변

0

확실하지 않습니다. 귀하의 접근 방식은 정확합니다. 일반적으로 페이지 객체 패턴을 사용하고 "LoginPage"내에서 로직을 유지하십시오. 그리고 당신의 "두번째"시험에서 당신은 같이 참조 할 수 있습니다.

당신에게 아이디어를 제공 할 수있는 샘플이 그냥
HomePage homePage; 
LoginPage loginPage; 

@BeforeClass() 
public void setUp(){ 
//instantiate driver and GET login page 
} 

@Test(enabled=true) 
public void testOne() { 
String username = "<username>"; 
String password = "<password>"; 
loginPage = PageFactory.initElements(driver, LoginPage.class); 
loginPage.loginWithCredentials(username, password); 
// Assertions .. more code 
} 

@Test(enabled=true) 
public void testTwo() { 
String username = "<username>"; 
String password = "<password>"; 
loginPage = PageFactory.initElements(driver, LoginPage.class); 
homePage = loginPage.loginWithCredentials(username, password); 
//do what you want on homePage 
//more code ... 
} 

.. 당신은 귀하의 질문에 사용할 수있는 답변을, 그렇지 않으면 https://github.com/SeleniumHQ/selenium/wiki/PageObjects

페이지 개체 패턴에 대한 자세한 내용을보실 수 있습니다. 하지만 일반적으로이 로그인 -> 진행 사용 사례에는 권장되지 않습니다.

@Test(enabled=true) 
public void testOne(){ 
} 

@Test(enabled = true, dependsOnMethods = {"testOne"}) 
public void testTwo(){ 
//your code here 
}