문제

나는 TestNG와 함께 셀레늄 그리드를 사용하여 웹 사이트를 테스트하고 있습니다. 셀레늄 IDE에서 내보내는 테스트 코드는 제대로 작동합니다. 내 문제는 테스트가 평행하지 않고 순차적으로 실행되고 있다는 것입니다.

코드는 다음과 같습니다.

public class test{

    @BeforeMethod
    public void startSession()
    {
        ThreadSafeSeleniumSessionStorage.startSeleniumSession("localhost",4444,"*firefox","url" );
    }

    @AfterMethod(alwaysRun = true)
    public void closeSession() throws Exception
    {
      ThreadSafeSeleniumSessionStorage.closeSeleniumSession();
    }

    @DataProvider(name = "test")
    public Object[][] test()
    {
        return new Object[][]{
        {test1,null},
        {test2,null},
        };
}

 @Test(dataProvider = "test")
 void testen(String value1, String value2) throws Exception
  {
     ThreadSafeSeleniumSessionStorage.session().open("url");
     .
     .
     .
     .
     .
     ThreadSafeSeleniumSessionStorage.session().waitForPageToLoad("30000");
    }

}

내 testng.xml은 다음과 같습니다.

Suite Thread-Count = "5"skipfailedInvocationCounts = "false"verbose = "1"name = "명령 줄 Suite"junit = "false"parallent = "method"annotations = "jdk"

내가 뭘 잘못하고 있죠? 테스트는 하나 이상의 셀레늄 RC에서만 실행되지만 하나 이상이 시작되었습니다.

누군가가 나를 도울 수 있기를 바랍니다. 정말 중요합니다.

감사!

도움이 되었습니까?

해결책

병렬 데이터 제공 업체를 구현하는 TestNG 5.11로 업그레이드하십시오. 이전 버전은 항상 같은 스레드에서 모든 데이터 제공 업체 호출을 호출했습니다 ...

- 세드릭

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top