appium と selenium グリッドを使用して 2 つのデバイスで並列テストを実行しようとしていますが、何らかの理由で最初のノード サーバー (および最初のデバイス) でのみ実行されますが、2 番目のサーバーでは何も起こりません。
また、最初のサーバーをシャットダウンしてテストを実行すると、2 番目のサーバーでテストが実行されるため、サーバーに問題はありません。
parallel に設定するために指定する必要があるパラメーターはありますか?
助けてくれてありがとう !
ここに私のファイルがあります:
最初のサーバー json ファイル:
{
"capabilities":
[
{
"browserName": "SamsungS6",
"deviceName": "04157df40862d02f",
"version":"6.0.1",
"maxInstances": 3,
"platform":"ANDROID"
}
],
"configuration":
{
"cleanUpCycle":2000,
"timeout":30000,
"proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy",
"url":"http://localhost:4491/wd/hub",
"host": "localhost",
"port": 4491,
"maxSession": 5,
"register": true,
"registerCycle": 5000,
"hubPort": 4433,
"hubHost": "localhost"
}
}
2 番目のサーバーの json ファイル:
{
"capabilities":
[
{
"browserName": "OnePlusOne",
"deviceName": "14b2b276",
"version":"6.0.1",
"maxInstances": 3,
"platform":"ANDROID",
"platformName":"ANDROID"
}
],
"configuration":
{
"cleanUpCycle":2000,
"timeout":30000,
"proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy",
"url":"http://localhost:4490/wd/hub",
"host": "localhost",
"port": 4490,
"maxSession": 5,
"register": true,
"registerCycle": 5000,
"hubPort": 4433,
"hubHost": "localhost"
}
}
セレン グリッドを実行します。
java -jar selenium-server.jar -role hub -port 4433
最初のシナリオを実行
node.exe node_modules\appium\bin\appium.js --nodeconfig myfirstscenario.json -p 4490 -U 14b2b276 -bp 5490 --chromedriver-port 6490
2 番目のシナリオを実行する
node.exe node_modules\appium\bin\appium.js --nodeconfig mysecondscenario.json -p 4491 -U 04157df40862d02f -bp 5491 --chromedriver-port 6491
テスト
@BeforeTest(alwaysRun = true)
public void setUp(){
try {
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, "ANDROID");
capabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "");
capabilities.setCapability(AndroidMobileCapabilityType.APP_PACKAGE, appPackage);
capabilities.setCapability(AndroidMobileCapabilityType.APP_ACTIVITY, appActivity);
driver = new AndroidDriver(new URL("http://localhost:4433/wd/hub"), capabilities);
new WebDriverWait(driver, 60);
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
@Test
public void test(){
System.out.println("hello world");
try {
sleep(6000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
@AfterTest(alwaysRun = true)
public void closeDriver(){
driver.quit();
}