Dev*_*ter 1 selenium-grid appium
我想在多个设备(Android)上执行测试脚本.当我使用JUnit运行我的java类时,我只能在一个设备中执行.如何一次在多个设备中执行.
任何建议将不胜感激.
TestNG.xml文件
<suite name="Default suite" thread-count="2" parallel="tests">
<test name="Nexus">
<Parameters>
<parameter name="platform" value="Nexus"/>
<parameter name="browsername" value="Android"/>
<parameter name="udid" value="xyz" />
<parameter name="remoteurl" value="http://0.0.0.0:4723/wd/hub"/>
</Parameters>
<classes>
<class name="AppiumTest">
<methods>
<include name="Test1"/>
<include name="Test2"/>
<include name="Test3"/>
</methods>
</class>
</classes>
</test>
<test name="Moto E">
<Parameters>
<parameter name="platform" value="Moto E"/>
<parameter name="browsername" value="Android"/>
<parameter name="udid" value="abc" />
<parameter name="remoteurl" value="http://0.0.0.0:4726/wd/hub"/>
</Parameters>
<classes>
<class name="AppiumTest">
<methods>
<include name="Test1"/>
<include name="Test2"/>
<include name="Test3"/>
</methods>
</class>
</classes></suite>
Run Code Online (Sandbox Code Playgroud)
如果使用testNG而不是JUnit,则可以创建一个带有testng.xml文件的测试套件,该文件应如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<suite name="Suite" parallel="tests" thread-count="2">
<test name="Nexus 7">
<parameter name="udid" value="XXXX" />
<classes>
<class name="testNG.TestOne"/>
</classes>
</test> <!-- Test -->
<test name="HTC desrire">
<parameter name="udid" value="XXXX" />
<classes>
<class name="testNG.TestOne"/>
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
Run Code Online (Sandbox Code Playgroud)
说明并行测试和线程数为2允许在单独的设备上并行完成两个测试.
您需要做的就是配置具有每个设备功能的Selenium Grid节点,并在测试脚本中使用通过testng.xml传入的udid参数.
希望这可以帮助.
| 归档时间: |
|
| 查看次数: |
446 次 |
| 最近记录: |