如何使用selenium + testng并行运行测试用例

时间:2014-12-08 05:37:59

标签: selenium selenium-webdriver testng

我想用不同的参数并行运行测试用例。我的testng.xml看起来像这样

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

      <parameter name="browser" value="@BROWSER@"/> 

        <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 个答案:

答案 0 :(得分:0)

如果您希望在不同的浏览器上运行相同的测试用例,则有不同的方法。

  1. 在我们的xml文件中定义多个<test>并具有单独的参数。您需要为每个@ BROWSER @ @ BROWSER1,@ BROWSER2创建一个新名称。然后使用parallel = tests运行,这会在不同的浏览器上触发相同的测试用例。但是,这种方法的问题是你必须始终为你的ant xml提供固定数量的浏览

  2. 另一种方法是,为@ BROWSER @参数提供以逗号分隔的列表。使用数据提供程序进行拆分并创建驱动程序实例。设置parallel =方法。

  3. 设置parallel =方法。基于控制浏览器的paralle从外部运行,即如果你使用具有不同参数值的Jenkins之类的东西,触发各种构建@BROWSER @

相关问题