2014-12-08 152 views
0

我想用不同的參數並行運行測試用例。我的testng.xml看起來像這樣如何使用selenium + testng並行運行測試用例

<suite name="Automation Testing" preserve-order="true"> 

     <parameter name="browser" value="@[email protected]"/> 

     <test name="Login"> 
      <classes> 
      <class name="common.Login" > </class> 
      </classes>  
     </test>  

    </suite> 

的Java類,它接受參數

@parameters({'browser'}) 
    @beforesuite 
    public void login(String browser){ 
    if(broswer.equals('ff')){ 
     WebDriver driver = new FirefoxDriver() 
    } 
    } 

我已經通過這個環節https://stackoverflow.com/questions/14625256/how-to-run-the-test-in-parallel-using-selenium-webdrivertestng了......但我還沒有什麼出它...請讓我知道我該怎麼做.....

+1

你爲什麼不把並行=「測試」你的testng.xml – Paras 2014-12-08 05:48:20

+0

各個地方建立你會通過@瀏覽器@從? – 2014-12-08 06:50:55

+0

@pArAs ya,但我想運行不同的參數。可以說,第一個實例應該調用ff瀏覽器,第二個實例應該調用chrome瀏覽器。 – sharan 2014-12-08 12:51:20

回答

0

如果你想讓相同的測試用例在不同的瀏覽器上運行,有不同的方法。

  1. 在我們的xml文件中定義多個<test>並具有單獨的參數。您需要爲每個@ BROWSER @ @ @ @ BROWSER1,@ BROWSER2重新命名。然後運行parallel = tests,這會在不同的瀏覽器上觸發相同的測試用例。但是,這種方法的問題是,您將不得不始終向您的ant提供固定數量的瀏覽xml

  2. 另一種方法是向@ BROWSER @參數提供逗號分隔列表。使用數據提供者進行拆分並創建驅動程序實例。設置parallel =方法。

  3. 設置parallel =方法。控制基於瀏覽器的paralle從外部即​​觸發運行,如果你正在使用像詹金斯與@瀏覽器不同的參數值@

相關問題