我正在尝试使用Python语言的Appium。我在pythonforandroid上有一个简单的脚本(只需打开应用程序,查找文本并断言此文本)。
我想在几个设备上运行这个测试。在
我已经做了些什么:
我已经创建了两个Android模拟器。运行Selenium Grid hub。为每个仿真器创建两个配置文件并运行2个Appium服务器:
集线器java -jar selenium-server-standalone-2.53.0.jar -role webdriver -nodeConfig emulator-5554.json -hub http://127.0.0.1:4444/grid/register
Appium服务器:
^{pr2}$
以及appium --address 127.0.0.1 --port 4722 -bp 2254 --udid emulator-5556 --nodeconfig C:\SeleniumGrid\Android\emulator-5556.json
我的JSON配置文件:
第一个:{ "capabilities":
[
{
"deviceName": "emulator-5554",
"browserName":"Browser",
"version":"6.1",
"maxInstances": 1,
"platform":"ANDROID"
}
],
"configuration":
{
"cleanUpCycle":2000,
"timeout":30000,
"proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy",
"url":"http://127.0.0.1:4721/wd/hub",
"host": "127.0.0.1",
"port": 4721,
"maxSession": 10,
"register": true,
"registerCycle": 5000,
"hubPort": 4444,
"hubHost": "127.0.0.1"
}
}
第二:{ "capabilities":
[
{
"browserName":"Browser",
"deviceName": "emulator-5556",
"version":"4.4.4",
"maxInstances": 1,
"platform":"ANDROID"
}
],
"configuration":
{
"cleanUpCycle":2000,
"timeout":30000,
"proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy",
"url":"http://127.0.0.1:4722/wd/hub",
"host": "127.0.0.1",
"port": 4722,
"maxSession": 10,
"register": true,
"registerCycle": 5000,
"hubPort": 4444,
"hubHost": "127.0.0.1"
}
}
以及我的设置方法:def setUp(self):
desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = 'platformVersion'
desired_caps['deviceName'] = 'deviceName'
desired_caps['app'] = 'oneDo.apk'
self.driver = webdriver.Remote('http://127.0.0.1:4444/wd/hub', desired_caps)
如何在多个设备上运行这个测试?下一步我该怎么办?
或许可以使用一些框架。拍哪个,怎么拍?我到处都在问这个问题,什么都读过。在
我一直知道的是,创建第二个脚本test2.py,但对于另一个设备。每个设备的每个脚本。但我认为这不是一个正确的方法。在