為了提高測試效率,測試需要同時在多個android設備上運行,就需要啟動多個appium。
啟動appium時,為每個設備設置不同的端口號,并為driver設置該設備的udid。見如下實例,關鍵是紅色部分
DesiredCapabilities capabilities = new DesiredCapabilities();?
capabilities.setCapability(CapabilityType.BROWSER_NAME, "");
capabilities.setCapability("deviceName", "minote");
capabilities.setCapability("udid", "AQPRBMWGJN45CMR8");
//設置每次運行不重新啟動被測試app
capabilities.setCapability("noReset","true");
capabilities.setCapability("fullReset","false");?
//設置安卓系統版本
capabilities.setCapability("platformVersion", "4.4");?
capabilities.setCapability("platformName", "Android");?
capabilities.setCapability("device", "selendroid");?
capabilities.setCapability("app", app.getAbsolutePath());?
String abc = app.getAbsolutePath();
//設置app的主包名和主類名 微信程序包名和activity 名?
capabilities.setCapability("appPackage", "com.tencent.mm");
capabilities.setCapability("appActivity", "com.tencent.mm.ui.LauncherUI");?
//啟動
try {
driver = new AndroidDriver(new URL("http://127.0.0.1:4725/wd/hub"),capabilities);
} catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}