我正在为移动应用程序自动化工作。对于所有设备,OS和制造商vise UI都不同。例如。日期和时间选择器。
如何管理移动应用程序自动化?
答案 0 :(得分:1)
首先,您需要弄清楚是否使用相同的代码为不同的平台开发移动应用程序。例如,有一些跨平台软件可用于编写可在iOS和Android上运行的代码。在这种情况下,应用程序中不同控件的基础属性将是相同的。这将允许您编写适用于Android和iOS的相同脚本。
您可以使用页面工厂模型并使用@AndroidFindby
和@iOSFindBy
在不同平台上进行识别,并使用单个变量进行引用。
示例 -
@AndroidFindBy(uiAutomator="new UiSelector().text(\"Login\")")
@iOSFindBy(xpath="//UIAStaticText[@name='Login']")
private WebElement loginButton;
public void clickOnLoginButton() {
loginButton.click();
}
上述代码中的 clickOnLoginButton()
方法适用于Android和iOS。关于日期和时间选择器之类的东西,根据操作系统的不同而不同,你需要在有条件的情况下解决它。
更多的是,80%的脚本可以在两个设备上运行而无需任何更改。对于其余的,您可能需要添加if条件,或者编写单独的脚本。