Appium Sauce Labs - Неподдерживаемая комбинация ОС / браузера / версии / устройства - PullRequest
1 голос
/ 15 апреля 2019

Я пытаюсь настроить мой первый тест Appium (не нативное или гибридное приложение) в Sauce Labs, и я получаю исключение WebDriverException при настройке моих возможностей:

org.openqa.selenium.WebDriverException: Unable to parse remote response: Misconfigured -- Unsupported OS/browser/version/device combo: OS: 'unspecified', Browser: 'iphone', Version: '11.2.2.', Device: 'iPhone Simulator'`

Вот что яя делаю, чтобы настроить мои заглавные буквы:

public static DesiredCapabilities CreateAppiumCapabilities(String browser, String version, String platform,String device, String methodName) { 
DesiredCapabilities caps = new DesiredCapabilities(); 
caps.setCapability(MobileCapabilityType.PLATFORM_NAME, platform); 
caps.setCapability(MobileCapabilityType.PLATFORM_VERSION, version); 
caps.setCapability(MobileCapabilityType.DEVICE_NAME, device); 
caps.setCapability(MobileCapabilityType.AUTOMATION_NAME,"XCUITest"); 
caps.setCapability(MobileCapabilityType.BROWSER_NAME, browser); 
caps.setCapability("appiumVersoin", "1.7.2"); 
caps.setCapability("name", methodName); 
System.out.println(caps); 
return caps;

Затем в моем файле testBase.java я запускаю это:

private ThreadLocal<IOSDriver> iosDriver = new ThreadLocal<IOSDriver>();

...
...
...

DesiredCapabilities capabilities = SauceUtils.CreateAppiumCapabilities(browser, version, platform, device, methodName);
                String url = SauceUtils.getURL();
                iosDriver.set(new IOSDriver(new URL(url), capabilities));
                sessionId.set(((IOSDriver) getIosDriver()).getSessionId().toString());

System.out.println (заглавные буквы) показывает все правильно:

Capabilities {appiumVersoin: 1.7.2, automationName: XCUITest, browserName: Safari, deviceName: iPhone Simulator, name: appiumTest, platformName: iOS, platformVersion: 11.2.2}

Вот фактический тест:

public class AppiumTest extends TestBase {
    @Test(dataProvider = "appium", groups = "Appium", description = "simple appium test")
    public void appiumTest(String browser, String version, String platform, String device, Method method) throws Exception {
        this.createDriver(browser, version, null, method.getName(), device, platform);
        IOSDriver<WebElement> mobiledriver = getIosDriver();
        mobiledriver.get("http://appium.io/");
        Assert.assertEquals(mobiledriver.getCurrentUrl(), "http://appium.io/", "URL Mismatch");
        Assert.assertEquals(mobiledriver.getTitle(), "Appium: Mobile App Automation Made Awesome.", "Title Mismatch");
    }
}

И функция getIosDriver():

    public IOSDriver<WebElement> getIosDriver() {
        return iosDriver.get();
    }

Не уверен, что я делаю здесь неправильно, любой ився помощь будет принята с благодарностью!:)

1 Ответ

1 голос
/ 16 апреля 2019

Из приведенного выше кода видно, что в функции "appiumVersion" есть опечатка:

caps.setCapability("appiumVersoin", "1.7.2"); 

должно быть

caps.setCapability("appiumVersion", "1.7.2"); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...