我已将自动化应用程序配置为在 lambdatest 上运行 appium。 但我收到以下错误,无法创建驱动程序会话
Driver info: io.appium.java_client.android.AndroidDriver
Command: [null, newSession {capabilities=[{browserName=Chrome, appium:deviceName=Google Pixel 7 Pro, platformName=ANDROID, appium:platformVersion=13}], desiredCapabilities=Capabilities {browserName: Chrome, deviceName: Google Pixel 7 Pro, platformName: ANDROID, platformVersion: 13}}]
Capabilities {browserName: Chrome, deviceName: Google Pixel 7 Pro, platformName: ANDROID, platformVersion: 13}
org.openqa.selenium.SessionNotCreatedException: Could not start a new session. Response code 400. Message: unsupported platfrom ANDROID
我的代码中的平台名称是 Android,但它在内部转换为全部大写。 我正在运行以下 selenium 和 appium 版本。
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>4.9.1</version>
</dependency>
<dependency>
<groupId>io.appium</groupId>
<artifactId>java-client</artifactId>
<version>8.5.1</version> <!-- Specify the desired version -->
</dependency>
如果有任何解决方法或任何可以执行此操作的较低版本,请告诉我。
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("platformName", "android");
capabilities.setCapability("deviceName", "Pixel 3");
capabilities.setCapability("platformVersion", "9");
capabilities.setCapability("isRealMobile", true);
将 ANDROID 更改为 android
所需的功能详细信息必须作为映射与 w3c 参数一起传递才能正常工作。下面给出的是对我有用的代码。
DesiredCapabilities capabilities = new DesiredCapabilities();
HashMap<String, Object> ltOptions = new HashMap<String, Object>();
ltOptions.put("w3c", true);
ltOptions.put("platformName", "android");
ltOptions.put("deviceName", "Pixel 6");
ltOptions.put("platformVersion", "13");
ltOptions.put("isRealMobile", true);
capabilities.setCapability("lt:options", ltOptions);