Appium 自动化测试验证步骤
Appium 自动化测试验证步骤
目的:
为了自动化测试APP,想要高效验证内容
已知:
可用有,PrefDog ,Appium, 且PrefDog 已经有完善的相关自动化脚本
存在问题:
自动化在于教师端,需要操作教师端,客户端用于性能验证,单一的监听
我们要求肯定不能满足于这样,我需要客户端自动操作,用于验证内容。
结论
Appium 对于iOS 自动化测试很好用,但是对于我们的Hybrid类型App 似乎不是特别好用。
折腾步骤
新电脑,安装环境啥的,因为网上有太多的安装教程,这里不想多说。Appium Mac 安装教程
给设备安装
WebDriverAgent
推荐去Appium 的安装包下面去运行, 具体的方法参考
1 | cd /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-WebDriverAgent |
- 打开Appium 客户端,配置如下
1 | { |
点击
Start Session
前提 Xcode 在运行当前 WebDriverAgent ,然后 Appium 会自动拉起设备上指定的bundleId App
问题来了,发现App Source 里面没有我们想要的button 之类的,因为没有特殊id 就没办法进行相应自动化。我们的项目是给予Laya Native 的App , 显示区域是JavaScript 调用GLKView进行绘制,所以,抓不到iOS UI 控件应该是正常的。
有没有其他方式
在准备宣布说无法调试Laya JavaScript 的时候,我看到了这个 appium 使用ios_webkit_debug_proxy。
感觉我又有了希望,安装步骤依然忽略,安装以后配置appium
1 | { |
能够完美拉起 Safari , 也能看到Safari 里面的标签内容,但是不是我们想要的App 内容
相关配置放到Appium 里面是可以直接拉起Safari 的,但是不能拉起我们指定的App
瞅了一下Appium 关于 hybrid App的测试例子,大多数是使用了Webview 技术来profile 相关HTML Context 内容。这个跟我们现有项目不符,验证到此可以结束了。
结论
Appium 确实是一个很优秀的自动化测试框架,可以通过大家熟知的语言进行相关自动化测试,能够非常方便的提高测试的效率,增加测试结果的可靠性。这一切都需要针对正常的iOS或者Android App , 对于 hybrid App 也有非常不错的测试方式,相关测试代码也是非常的简洁。对于正常类型App 测试,强烈推荐。