Я получаю объектный класс страницы integration.pages.login.LoginPage выглядит подозрительно: ошибка, когда я пытаюсь запустить тесты с AppiumDriver в Browserstack

Приведенная ниже проблема относится к проекту Appium-Serenity-Cucumber-JUnit для приложения.

Когда я запускаю свои тесты локально с помощью WebDriver и подключенного устройства, все работает отлично. Когда я меняю WebDriver на AppiumDriver, чтобы запустить их в Browserstack без физического устройства, я получаю сообщение об ошибке.

Базовая страница:

public class BasePage extends PageObject {
    public AppiumDriver driver;

    public BasePage(AppiumDriver appiumDriver) {
        this.driver = appiumDriver;
        PageFactory.initElements(new AppiumFieldDecorator(appiumDriver), this);
    }
}

Пример страницы:

public LoginPage(AppiumDriver passedDriver) {
    super(passedDriver);
}

@iOSFindBy(xpath ="//XCUIElementTypeButton[@name=\"haveAnAccountNormalStateButton\"]")
@AndroidFindBy(id = "com.braeburn.bluelink:id/login_button")
private MobileElement loginBtn;

public void loginWith(String username, String pass){
    Waiting.visible(driver,loginBtn);
    loginBtn.click();
    Waiting.visible(driver,emailField);
    CommonTask.sendKeys(emailField, username,"email field");
    Waiting.visible(driver,passField);
    CommonTask.sendKeys(passField, pass, "pass field");
    //driver.hideKeyboard;
    signInBtn.click();
}

Пример шагов:

@Given("^User is on login page and enters valid creditentials$")
public void userIsOnLoginPageAndEntersValidCreditentials() {
    loginPage.loginWith(TestData.CORRECT_EMAIL,TestData.FIRST_PASSWORD);
}

Используемый бегун:

Бегун

Возможности, используемые в Serenity:

Возможности

Если кто-то сможет предоставить хороший пример или какую-либо помощь, я буду более чем благодарен.


person Popescu Cosmin Sebastian    schedule 08.08.2018    source источник


Ответы (1)


Из конфигурации возможностей, которой вы поделились, я вижу, что вы добавляете возможности с префиксом «appium». а затем разбор вашего кода. Если да, добавьте указанные ниже возможности для запуска тестов в Google Nexus 6 в соответствии с вашей конфигурацией.

appium.os_version=6.0 appium.device=Google Nexus 6 appium.real_device=true

Вы можете сослаться на образец проекта здесь: https://github.com/browserstack/serenity-browserstack

person Kireeti Annamaraj    schedule 08.08.2018