我正在学习移动应用程序的自动化测试。
当我通过一些教程时,我发现我们可以使用UIAutomator Viewer定位元素 - 通过截屏和查找元素。
但通过截屏我找不到某些元素的元素。
那么,我们是否有其他方法可以找到元素或任何其他工具,如UIAutomator?
请帮忙。
如果您有任何移动自动化测试的良好链接,请继续。
感谢。
答案 0 :(得分:0)
UIAutomator由Android SDK提供,这是Android工具的一部分。 您可以使用Appium提供的工具。请参阅详细信息和示例here
答案 1 :(得分:0)
通常,安装UI自动装置,如果您在Windows中使用appium,如果使用mac,则可以使用appium检查器进行识别。
printf
如果您想点击它们,请添加find_element(class: "classname")
find_element(id: "resource-id name")
.click
如果您仍然没有find_element(class: "classname").click
,id
,text
的详细信息,则可以选择添加content-desc
详细了解link。
如果您是测试团队的一员,对正在开发的应用程序进行测试,您可以向开发人员提出错误,以防万一,没有唯一标识符,并要求开发团队添加一个。
答案 2 :(得分:0)
当您尝试使用UIautomatorviewer查找元素时,需要突出显示要查找定位器的元素。
如果它没有给你id,name或xpath那么你必须写 xpath手动。要手动编写xpath,请参阅这些link1和link2。
作为另一种选择,您可以使用appium桌面客户端查找移动应用中的元素。为此,您需要按照以下步骤进行操作
1. In appium window, click on 'Start Inspector Session' icon
2. In there you need to add the relevant capabilities there.
参考图片here。
desiredCapabilities.setCapability("app", "C:\\Users\\VWEERAY\\Desktop\\APPIUM\\mediashare.apk");
desiredCapabilities.setCapability("appPackage", "com.android.chrome");
desiredCapabilities.setCapability("appActivity", "org.chromium.chrome.browser.document.ChromeLauncherActivity");
desiredCapabilities.setCapability("platformName", "Android");
desiredCapabilities.setCapability("deviceName", "192.168.56.101:5555");
desiredCapabilities.setCapability("deviceName", "AndroidDevice1:5554");
desiredCapabilities.setCapability("platformVersion", "6.0");
3.Then click on 'Start Session' in the bottom.
4. It will open with a Mobile view and from there you can find locators like in the uiautomatorviewer.