У меня есть приложение для Android, где моя деятельность содержит представление списка. Я работаю автоматизированный тестовый случай для проведите пальцем, чтобы удалить элемент списка просмотра. Я написал этот код для получения списка:
List<WebElement> list = driver.findElements(By.id("com.xyz.email:id/conversation_list_view"));
list.get(0).click();
Этот код должен нажимать на первый элемент списка, но он не работает должным образом.
Я написал другой код для считывания, чтобы удалить элемент списка:
MobileElement emailCell = (MobileElement) driver.findElementByXPath("/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.support.v4.widget.DrawerLayout/android.widget.LinearLayout/android.widget.FrameLayout[2]/android.widget.FrameLayout/android.widget.RelativeLayout/android.view.ViewGroup/android.widget.FrameLayout/android.widget.ListView/android.widget.FrameLayout/android.view.View");
androidPhone.swipeOnElement("left", emailCell);
У меня есть готовая функция с именем "swipeOnElement", которая смахивает элемент справа налево.
Dimension size = driver.manage().window().getSize();
double endX = 0;
double endY = 0;
int elementX = element.getCenter().x;
int elementY = element.getCenter().y;
int finalX;
int finalY;
switch (direction) {
case "left":
endX = size.width;
break;
case "right":
endX = 0;
break;
case "up":
endY = 0;
break;
case "down":
endY = size.height;
break;
}
if (direction == "left" | direction == "right") {
finalX = (int) endX;
finalY = elementY;
} else {
finalX = elementX;
finalY = (int) endY;
}
System.out.println("startY=" + elementY);
System.out.println("startX=" + elementX);
System.out.println("endY=" + finalY);
System.out.println("endX=" + finalX);
new TouchAction(driver)
.press(element)
.waitAction(300)
.moveTo(finalX, finalY)
.release()
.perform();
delay(1000);
Эта функция в порядке. Работает отлично. Но когда я попробовал его в элементе списка, он не работал должным образом. Я не знаю, почему он так себя ведет. Любая помощь, пожалуйста!