我在测试用于在线购物的应用时遇到问题。我注意到应用程序工作的所有按钮,但我有系统按钮的问题(看图片)。我正在使用按钮UiAutomatorViewer
。
在图片中我正在尝试将产品添加到购物车但是当我点击按钮“Dodaj”(意味着添加)时窗口关闭但是应用程序中有任何操作,产品应该添加到购物车。我手动测试了这个应用程序,一切正常。
我试图以多种方式操作按钮,但仍然没有。有谁知道如何解决它?对我来说测试是非常重要的功能。
public class Product extends MainPage {
private AndroidDriver<AndroidElement> driver;
@FindBy(id = "com.mec.leroy:id/product_add_to_cart")
private WebElement addToCart;
@FindBy(xpath = "//android.widget.Button[@index='1']") //problem with button
private WebElement buttonAdd;
@FindBy(id = "com.mec.leroy:id/product_name")
private WebElement productName;
public Product(AndroidDriver driver) {
super(driver);
this.driver = driver;
}
public Product addProduct() throws InterruptedException {
driver.findElementByAndroidUIAutomator("new UiScrollable(new UiSelector()).scrollIntoView(text(\"do koszyka\"));");
addToCart.click();
buttonAdd.click();
Thread.sleep(5000);
return new Product(driver);
}
public boolean productName() throws InterruptedException {
Thread.sleep(2000);
try {
productName.getText();
return true;
} catch (ElementNotVisibleException e) {
return false;
}
}
public class Connector {
public AndroidDriver Settings() throws IOException, InterruptedException {
runAppium();
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "33004db396a6c2d1"); // nazwa urządzenia
capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");
capabilities.setCapability(MobileCapabilityType.AUTOMATION_NAME, "UiAutomator2");
capabilities.setCapability("noRest", "true");
capabilities.setCapability("fullReset", "false");
// capabilities.setCapability("useKeystore", "true");
//uruchomienie aplikacji z poziomu telefonu
capabilities.setCapability("appPackage", "com.mec.leroy");
capabilities.setCapability("appActivity", "com.mec.leroy.main.activity.MainActivity");
//inicjalizacja połączenia z Appium Server
AndroidDriver<AndroidElement> driver = new AndroidDriver<AndroidElement>(new URL("http://0.0.0.0:4723/wd/hub"), capabilities);
return driver;
}
答案 0 :(得分:0)
您正在使用UiAutomatorViewer
(使用旧的 UiAutomator ),但在您的测试中,您提供 UiAutomator2 :知道这些框架构建快照xml很重要以不同的方式,所以您的定位器可能不正确。
我建议您尝试使用官方appium-desktop检查并与您的按钮互动:
现在,您可以检查元素并尝试从检查器中单击按钮。