Тестирование Java Eclipse на Android - Tap не работает, импорт не распознается - PullRequest
0 голосов
/ 26 сентября 2018

Я пытаюсь использовать TouchAction для тестирования Android Java Eclipse.

Однако по какой-то причине Eclipse не распознает tap и tapOptions.

Вследующий код:

package tests;

import java.net.MalformedURLException;
import java.util.concurrent.TimeUnit;

import org.openqa.selenium.WebElement;

import io.appium.java_client.TouchAction;
import static io.appium.java_client.touch.TapOptions.tapOptions;
import static io.appium.java_client.touch.LongPressOptions.longPressOptions;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.android.AndroidElement;
import static java.time.Duration.ofSeconds;
import static io.appium.java_client.touch.offset.ElementOption.element;




public class gestures extends AppiumTest {

    public static void main(String[] args) throws MalformedURLException {
        // TODO Auto-generated method stub
        AndroidDriver<AndroidElement> driver=Capabilities();
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
        driver.findElementByXPath("//android.widget.TextView[@text='Views']").click();
        //Tap
        TouchAction t =new TouchAction(driver);
        WebElement expandList=  driver.findElementByXPath("//android.widget.TextView[@text='Expandable Lists']");
        t.tap(tapOptions().withElement(element(expandList))).perform();
        driver.findElementByXPath("//android.widget.TextView[@text='1. Custom Adapter']").click();
    WebElement pn=  driver.findElementByXPath("//android.widget.TextView[@text='People Names']");

        t.longPress(longPressOptions().withElement(element(pn)).withDuration(ofSeconds(2))).release().perform();
        //Thread.sleep(2000);
        System.out.println(driver.findElementById("android:id/title").isDisplayed());

    }
}

, следующие операции импорта и строки не распознаются:

    import static io.appium.java_client.touch.TapOptions.tapOptions;
    import static io.appium.java_client.touch.LongPressOptions.longPressOptions;
    import static io.appium.java_client.touch.offset.ElementOption.element;
t.tap(tapOptions().withElement(element(expandList))).perform();
t.longPress(longPressOptions().withElement(element(pn)).withDuration(ofSeconds(2))).release().perform();

Почему они не распознаются?

IЯ использую:

  1. Java JDK 1.8.0

  2. Java-клиент 5.0.0 бета 6 jar

  3. appium server v1.9.1

Я пытался использовать разные java-клиентские банки

Когда я изменяю jar на 6.1.0,появляется следующая ошибка (импорт распознается):

java.lang.NoClassDefFoundError: org/openqa/selenium/remote/internal/OkHttpClient$Factory

Устранена путем добавления java-клиента jar 6.0.0 beta 4

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...