Appium不仅局限于实现移动应用的自动化测试。只要被测系统的界面层提供开放的交互途径,就可以为其单独编写驱动程序,并将其包含在Appium中。本篇博客将会介绍使用Appium For Mac框架,实现针对MacOs应用程序的自动化测试。
环境依赖
除了需要安装标准的Appium之外,Mac2驱动程序还需要配置以下内容:
- macOS 10.15或更高版本
- Xcode 12或更高版本
- 开启Xcode Helper应用程序的Accessibility 权限。
Security & Privacy -> Privacy -> Accessibility -> System
testmanagerd
进程依赖UIAutomation的权限,可以使用以下设置:automationmodetool enable-automationmode-without-authentication
Mac Capabilities
Capability | 描述 |
---|---|
platformName | 设置为mac |
automationName | 设置为mac2 |
appium:systemPort | 内部服务器要监听的端口号,默认端口10100 |
appium:systemHost | 内部服务器要监听的主机名,默认主机是127.0.0.1 |
appium:webDriverAgentMacUrl | 如设置后,Appium将连接到WebDriverAgentMac已开启的实例,而不再重新启动一个服务 |
appium:showServerLogs | 包括xcodebuild输出日志,默认值为false |
appium:serverStartupTimeout | WebDriverAgentMac启动超时时间,默认值120000 |
appium:bundleId | 被测应用bundleID |
appium:noReset | 是否要重启应用 |
Absolute AXPath
AppiumForMac可以通过“absolute AXPath”的特殊XPath选择器来检索元素。AXPath选择器使用Accessibility API 来检索和获取控件属性。
AppiumForMac提供了一个工具,用于生成界面上任何元素的AXPath。首先,使用Finder或Launchpad手动启动AppiumForMac应用程序。它不会显示窗口,但会出现在dock中。将鼠标指针悬停到某一控件,按住键盘上的fn
键约三秒,AppiumForMac将找到该元素的AXPath。并将AXPath选择器存储到剪贴板中,以便您可以将其粘贴到测试代码中。
这种行为在界面上的任何地方都会起作用,因为AppiumForMac可以查找任务具有Accessibility API属性的控件。
运行测试
Copy to Clipboard