0

我正在尝试自动化 appium android,但所需的功能总是会为酱实验室抛出错误,例如:

无法解析远程响应:无法同时指定 browserName 和 app caps。

我没有在 cap 中添加 browserName 仍然显示请求 JSON 中的密钥

我还使用 curl 命令在服务器上上传 apk

完整错误:

线程“主”org.openqa.selenium.WebDriverException 中的异常:无法解析远程响应:无法同时指定浏览器名称和应用程序上限。请检查我们的平台配置器(https://wiki.saucelabs.com/display/DOCS/Platform+Configurator): {'deviceName': 'Android Emulator', 'app': 'sauce-storage:HelloGappium-android.zip', 'platform': 'ANDROID', 'browserName': 'chrome', 'version': '' , 'deviceType': 'phone', 'deviceOrientation': 'portrait', 'platformVersion': '4.4', 'platformName': 'Android', 'appiumVersion': '1.5.1'} 构建信息:版本:'3.7 .1',修订:'8a0099a',时间:'2017-11-06T21:01:39.354Z' 系统信息:主机:'',ip:'',os.name:'Windows 10',os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_131' 驱动程序信息: driver.version: AndroidDriver at org.openqa.selenium.remote.ProtocolHandshake。createSession(ProtocolHandshake.java:111) at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:73) at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:142) at io.appium .java_client.remote.AppiumCommandExecutor.execute(AppiumCommandExecutor.java:89) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:600) at io.appium.java_client.DefaultGenericMobileDriver.execute(DefaultGenericMobileDriver.java:42 ) 在 io.appium.java_client.AppiumDriver.execute(AppiumDriver.java:1) 在 io.appium.java_client.android.AndroidDriver.execute(AndroidDriver.java:1) 在 org.openqa.selenium.remote.RemoteWebDriver.startSession( RemoteWebDriver.java:219) 在 org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:142) 在 io.appium.java_client。DefaultGenericMobileDriver.(DefaultGenericMobileDriver.java:38) 在 io.appium.java_client.AppiumDriver.(AppiumDriver.java:83) 在 io.appium.java_client.AppiumDriver.(AppiumDriver.java:93) 在 io.appium.java_client.android。 AndroidDriver.(AndroidDriver.java:72) 在 test.java.sauceLabs.HybridBaseSauceLabs.capabilities(HybridBaseSauceLabs.java:37) 在 test.java.sauceLabs.HybridBasetestcase.main(HybridBasetestcase.java:26)

我的代码:

public static AndroidDriver<AndroidElement> capabilities() throws MalformedURLException 
{

DesiredCapabilities caps = DesiredCapabilities.android(); 
caps.setCapability("appiumVersion", "1.5.1"); 
caps.setCapability("deviceName","Android Emulator"); 
caps.setCapability("deviceType","phone"); 
caps.setCapability("deviceOrientation", "portrait"); 
caps.setCapability("platformVersion", "4.4"); 
caps.setCapability("platformName","Android"); 
caps.setCapability("app","sauce-storage:HelloGappium-android.zip");

driver = new AndroidDriver<>(new URL(URL), caps); 

return driver; 
}

在此处输入图像描述

如果我是酱汁实验室的新手,请告诉我是否遗漏任何东西

请分享您针对特定于 android 的酱汁实验室的工作上限

4

1 回答 1

1

在这里您可以找到平台配置器。Sauce Labs 提供它以帮助您获得所需的正确瓶盖。根据您的配置,对于Web测试,正确的上限将如下所示:

DesiredCapabilities caps = DesiredCapabilities.android();
caps.setCapability("appiumVersion", "1.6.4");
caps.setCapability("deviceName","Android Emulator");
caps.setCapability("deviceOrientation", "portrait");
caps.setCapability("browserName", "Browser");
caps.setCapability("platformVersion", "4.4");
caps.setCapability("platformName","Android");

对于HybridApp测试,browserName将设置为:

caps.setCapability("browserName", "");
于 2017-12-19T12:29:37.277 回答