美文网首页
Mac应用自动化测试(Appium2 + Mac2 + Pyth

Mac应用自动化测试(Appium2 + Mac2 + Pyth

作者: 西亭月圆 | 来源:发表于2022-07-06 12:13 被阅读0次

Appium Mac2 Driver官方文档:

https://github.com/appium/appium-mac2-driver/blob/master/README.md

一、设置Xcode Helper获得“辅助功能”权限(需安装Xcode):

打开系统设置    设置->安全性和隐私->辅助功能,把Xcode Helper 拖到列表里

(Xcode Helper 路径: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Xcode/Agents/Xcode Helper.app)

二、安装appium2。执行命令:

npm install -g appium@next

三、安装Mac2驱动:

appium driver install mac2

(注意:

appium2不再捆绑驱动,使用命令查看驱动列表:

appium driver list

安装单个驱动:

appium driver install <driverName>

更新单个驱动:

appium driver update <driverName>

默认地址已变更:http://localhost:4723   (仅包含IP和端口号)

四、新建Python虚拟环境,安装Appium-Python-Client

pip install Appium-Python-Client

示例:

from appium import webdriver

from appium.webdriver.common.appiumby import AppiumBy

desired_caps = {

'automationName':'Mac2',

    'platformName':'mac',

    'bundleId':'<bundleid for app to test>',   #  下一步骤中查到的Bundle identifier 

    'noReset':True

}

driver = webdriver.Remote('http://localhost:4723', desired_caps)

driver.implicitly_wait(10)

search_box = driver.find_element(by=AppiumBy.IOS_PREDICATE, value='elementType == 49 AND placeholderValue == "搜索"')

search_box.send_keys('hello')

driver.find_element(by=AppiumBy.CLASS_NAME, value='XCUIElementTypeTextView').send_keys('hello')

driver.find_element(AppiumBy.IOS_CLASS_CHAIN, '**/XCUIElementTypeStaticText[`value == "t01"`][1]').click()

五、查看待测应用bundleId:

1)打开Finder,选择“应用程序”,选择待测应用,右键选择“显示包内容”:

2)查看Info.plist文件中的Bundle identifier(默认使用Xcode打开)

六、关于查找元素

工具:结合Appium Inspector和Xcode中的Accessibility Inspector一起使用

安装Mac版Appium Inspector:

https://github.com/appium/appium-inspector/releases

笔者一般使用Appium Inspector查看IOS_CLASS_CHAIN,对于IOS_CLASS_CHAIN和XPATH,建议使用IOS_CLASS_CHAIN

IOS_CLASS_CHAIN语法说明:

https://github.com/facebookarchive/WebDriverAgent/wiki/Class-Chain-Queries-Construction-Rules

查找元素方法见官方文档:

https://github.com/appium/appium-mac2-driver/blob/master/README.md

相关文章

网友评论

      本文标题:Mac应用自动化测试(Appium2 + Mac2 + Pyth

      本文链接:https://www.haomeiwen.com/subject/julovrtx.html