숙련된 전문가를 위한 TestNG 인터뷰 질문

안녕하세요 친구! TestNG은 자동화된 테스트 제품군에서 사용되는 가장 일반적인 테스트 프레임워크 중 하나입니다. 이 글에서는 top testNG interview questions 5가지를 공유하고 있습니다.

질문. 조건부로 testNG 테스트 케이스를 어떻게 건너뛸 수 있습니까?
앤. TestNG는 SkipException이라는 이름으로 예외를 제공합니다. 다음과 같이 조건문 내에서 이 예외를 던질 수 있습니다.@Test
public void testMethod(){
if(conditionToCheckForSkippingTest)
throw new SkipException("Skipping the test");
//test logic
}

질문. 테스트 스크립트에 매개변수를 어떻게 전달할 수 있습니까?
앤. 이것은 testng.xml의 @Parameter 주석과 'parameter' 태그의 도움으로 달성할 수 있습니다.

<매개변수 이름="sampleParamName"값="sampleParamValue"/>

샘플 테스트 스크립트-public class Test {
@Test
@Parameters("sampleParam")
public void parameterTest(String paramValue) {
System.out.println("Value of sampleParam is - " + sampleParam);
}

질문. 테스트 케이스를 어떻게 병렬로 실행할 수 있습니까?
앤. 테스트를 병렬로 실행하려면 다음 두 개의 키-값 쌍을 추가하기만 하면 됩니다.

parallel="{methods/tests/classes}"
thread-count="{number of thread}".


질문. @Listener 주석의 용도는 무엇입니까?
앤. TestNG는 이벤트가 트리거되는 경우 일부 작업을 수행할 수 있는 다양한 종류의 리스너를 제공합니다. 이러한 리스너는 실패 시 스크린샷 찍기, 로깅 등과 같은 다양한 목적으로 사용할 수 있습니다.
@Listeners(PackageName.CustomizedListenerClassName.class)

공개 클래스 테스트 클래스 {
WebDriver 드라이버 = new FirefoxDriver();

공개 무효 testMethod(){
//테스트 로직
}
}

질문. @Factory 주석의 용도는 무엇입니까?
앤. @Factory 주석은 testNG 테스트의 동적 실행을 돕습니다. @Factory 주석을 사용하여 런타임에 전체 테스트 클래스에 매개변수를 전달할 수 있습니다.public class TestClass{
private String str;
public TestClass(String str) {
this.str = str;
}

@Test
public void TestMethod() {
    System.out.println(str);
}

}

공개 클래스 TestFactory{
//TestClass 클래스의 테스트 메소드는 "k1"및 "k2"데이터로 두 번 실행됩니다.
@공장
공개 개체[] factoryMethod() {
return new Object[] { new TestClass("K1"), new TestClass("k2") };
}
}

TestNG의 다양한 기능에 대해 자세히 알아보려면 이 종합TestNG Tutorial을 참조하십시오.

좋은 웹페이지 즐겨찾기