TestNG问题(Selenium网格)与并行测试?
在使用Selenium网格在appium(Android)中运行并行测试脚本时,我遇到了以下错误 默认套件 运行的测试总数:6,失败:0,跳过:3 配置失败:1,跳过:0 堆栈跟踪消息: org.openqa.selenium.SessionNotCreatedException:无法创建新会话。(原始错误:请求了一个新会话,但有一个正在进行) 我的TestNG xml文件:TestNG问题(Selenium网格)与并行测试?,testng,appium,selenium-grid,Testng,Appium,Selenium Grid,在使用Selenium网格在appium(Android)中运行并行测试脚本时,我遇到了以下错误 默认套件 运行的测试总数:6,失败:0,跳过:3 配置失败:1,跳过:0 堆栈跟踪消息: org.openqa.selenium.SessionNotCreatedException:无法创建新会话。(原始错误:请求了一个新会话,但有一个正在进行) 我的TestNG xml文件: <suite name="Default suite" thread-count="4" parallel="te
<suite name="Default suite" thread-count="4" parallel="tests">
<test name="Nexus">
<Parameters>
<parameter name="platform" value="Nexus"/>
<parameter name="browsername" value="Android"/>
<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="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>
selenium节点的命令:
appium--nodeconfig路径/to/json文件。
测试脚本:
公共类应用程序测试{
//静态远程网络驱动程序
@SuppressWarnings("rawtypes")
public static AndroidDriver driver;
@SuppressWarnings("rawtypes")
@org.testng.annotations.BeforeTest
public static void setUp() throws MalformedURLException{
DesiredCapabilities capabilities=new DesiredCapabilities();
capabilities.setCapability("deviceName","Nexus");
capabilities.setCapability("platformName","Android");
capabilities.setCapability("appPackage","club.apptu.basic.callrecorder");
capabilities.setCapability("appActivity","MainActivity");
driver=new AndroidDriver(new URL("http://0.0.0.0:4723/wd/hub"),capabilities);
driver.manage().timeouts().implicitlyWait(0, TimeUnit.SECONDS);
}
@org.testng.annotations.Test
public void Test1(){
turnonoff();
turnonoff();
//longclick();
// important();
// delete();
// deleterecord();
// scroll();
// languagechange();
}
@org.testng.annotations.Test
public void Test2(){
drawer();
drawer();
}
@org.testng.annotations.Test
public void Test3(){
clickonitem();
play();
pause();
}
如果您有任何建议,我们将不胜感激。我一直在使用Selenium Grid和Appium,但遇到了相同的错误。当设备失去连接时,如果您使用的是真实设备,请尝试断开并重新连接USB,然后重新启动节点 你可以跑
adb devices
如果它们被列出,你不应该得到那个错误
如需进一步帮助,请发布网格的测试脚本和JSON配置文件
希望这能有所帮助。我一直在使用Selenium Grid和Appium,但遇到了相同的错误。当设备失去连接时,会出现错误。如果您使用的是真实设备,请尝试断开并重新连接USB,然后重新启动节点 你可以跑
adb devices
如果它们被列出,你不应该得到那个错误
如需进一步帮助,请发布网格的测试脚本和JSON配置文件
希望这能有所帮助。我一直在使用Selenium Grid和Appium,但遇到了相同的错误。当设备失去连接时,会出现错误。如果您使用的是真实设备,请尝试断开并重新连接USB,然后重新启动节点 你可以跑
adb devices
如果它们被列出,你不应该得到那个错误
如需进一步帮助,请发布网格的测试脚本和JSON配置文件
希望这能有所帮助。我一直在使用Selenium Grid和Appium,但遇到了相同的错误。当设备失去连接时,会出现错误。如果您使用的是真实设备,请尝试断开并重新连接USB,然后重新启动节点 你可以跑
adb devices
如果它们被列出,你不应该得到那个错误
如需进一步帮助,请发布网格的测试脚本和JSON配置文件
希望这能有所帮助。因此,我使用的设置与此相同,它的工作原理是:
- 2台设备的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"> <parameter name="udid" value="XXXX" /> <classes> <class name="testNG.TestOne"/> </classes> </test> <!-- Test --> </suite> <!-- Suite -->
- JSON配置文件
{ "capabilities": [ { "browserName": "Chrome", "deviceName": "XXXX", "device": "XXXX", "udid":"XXXX", "version":"4.2", "maxInstances": 5, "platform":"ANDROID", "platformName": "Android" } ], "configuration": { "cleanUpCycle":2000, "timeout":10000, "proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy", "url":"http://0.0.0.0:4723/wd/hub", "maxSession": 5, "port": 4723, "host": "0.0.0.0", "register": true, "registerCycle": 5000, "hubPort": 4444, "hubHost": "localhost" } }
我希望这有助于解决您的问题。因此,我使用的设置与此相同,其工作原理是:
- 2台设备的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"> <parameter name="udid" value="XXXX" /> <classes> <class name="testNG.TestOne"/> </classes> </test> <!-- Test --> </suite> <!-- Suite -->
- JSON配置文件
{ "capabilities": [ { "browserName": "Chrome", "deviceName": "XXXX", "device": "XXXX", "udid":"XXXX", "version":"4.2", "maxInstances": 5, "platform":"ANDROID", "platformName": "Android" } ], "configuration": { "cleanUpCycle":2000, "timeout":10000, "proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy", "url":"http://0.0.0.0:4723/wd/hub", "maxSession": 5, "port": 4723, "host": "0.0.0.0", "register": true, "registerCycle": 5000, "hubPort": 4444, "hubHost": "localhost" } }
我希望这有助于解决您的问题。因此,我使用的设置与此相同,其工作原理是:
- 2台设备的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"> <parameter name="udid" value="XXXX" /> <classes> <class name="testNG.TestOne"/> </classes> </test> <!-- Test --> </suite> <!-- Suite -->
- JSON配置文件
{ "capabilities": [ { "browserName": "Chrome", "deviceName": "XXXX", "device": "XXXX", "udid":"XXXX", "version":"4.2", "maxInstances": 5, "platform":"ANDROID", "platformName": "Android" } ], "configuration": { "cleanUpCycle":2000, "timeout":10000, "proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy", "url":"http://0.0.0.0:4723/wd/hub", "maxSession": 5, "port": 4723, "host": "0.0.0.0", "register": true, "registerCycle": 5000, "hubPort": 4444, "hubHost": "localhost" } }
我希望这有助于解决您的问题。因此,我使用的设置与此相同,其工作原理是:
- 2台设备的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"> <parameter name="udid" value="XXXX" /> <classes> <class name="testNG.TestOne"/> </classes> </test> <!-- Test --> </suite> <!-- Suite -->
- JSON配置文件
{ "capabilities": [ { "browserName": "Chrome", "deviceName": "XXXX", "device": "XXXX", "udid":"XXXX", "version":"4.2", "maxInstances": 5, "platform":"ANDROID", "platformName": "Android" } ], "configuration": { "cleanUpCycle":2000, "timeout":10000, "proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy", "url":"http://0.0.0.0:4723/wd/hub", "maxSession": 5, "port": 4723, "host": "0.0.0.0", "register": true, "registerCycle": 5000, "hubPort": 4444, "hubHost": "localhost" } }
我希望这能帮助您解决问题。我的问题有什么问题?“寻求调试帮助的问题”(“为什么这段代码不起作用?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现问题所需的最短代码。没有明确问题说明的问题对其他读者没有帮助。请参阅:“我的问题出了什么问题?”寻求调试帮助的问题(“为什么此代码不起作用?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现问题所需的最短代码。没有明确问题说明的问题对其他读者没有帮助。请参阅:“我的问题出了什么问题?”寻求调试帮助的问题(“为什么此代码不起作用?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现问题所需的最短代码。没有明确问题说明的问题对其他读者没有帮助。请参阅:“我的问题出了什么问题?”寻求调试帮助的问题(“为什么此代码不起作用?”)必须包括所需的行为、特定的问题或错误,以及在问题本身中重现问题所需的最短代码。没有明确问题说明的问题对其他读者没有用处。请参阅:你能更新这个问题以包含测试脚本吗?我正在用端口号启动appium服务器,然后用TestNG套件运行我的测试类…是的,如果你想添加用TestNG运行的测试类,我可能能够进一步帮助你。我为这个问题添加了一个新的答案,希望能帮助你升级我正在用端口号启动appium服务器,然后用TestNG套件运行我的测试类…是的,如果您要添加使用TestNG运行的测试类,我可能能够进一步帮助您我已经为这个问题添加了一个新的答案,希望能帮助您更新任务我正在用端口号启动appium服务器,然后用TestNG套件运行我的测试类…是的,如果您要添加使用TestNG运行的测试类,我可能能够进一步帮助您我已经为这个问题添加了一个新的答案,希望能帮助您将问题更新为contai在测试脚本中,我用端口号启动appium服务器,然后用TestNG套件运行我的测试类…是的,如果您要添加使用TestNG运行的测试类,我可能能够进一步帮助您。我为这个问题添加了一个新的答案,希望在ubuntu中运行命令adb设备时对您有所帮助。。它将显示一些独特的id,这将足以