使用介绍
----------------AppCrawler 2.0.0app爬虫, 用于自动遍历测试. 支持Android和iOS, 支持真机和模拟器帮助文档: 移动测试技术交流。感谢: 晓光 泉龙 杨榕 恒温 mikezhou yaming116感谢提供商业支持的优秀公司: Keep--------------------------------Usage: appcrawler [options] -a, --app <value> Android或者iOS的文件地址, 可以是网络地址, 赋值给appium的app选项 -c, --conf <value> 配置文件地址 -p, --platform <value> 平台类型android或者ios, 默认会根据app后缀名自动判断 -t, --maxTime <value> 最大运行时间. 单位为秒. 超过此值会退出. 默认最长运行3个小时 -u, --appium <value> appium的url地址 -o, --output <value> 遍历结果的保存目录. 里面会存放遍历生成的截图, 思维导图和日志 --capability k1=v1,k2=v2... appium capability选项, 这个参数会覆盖-c指定的配置模板参数, 用于在模板配置之上的参数微调 -r, --report <value> 输出html和xml报告 --template <value> 输出代码模板 --master <value> master的diff.yml文件地址 --candidate <value> candidate环境的diff.yml文件 --diff 执行diff对比 -vv, --verbose 是否展示更多debug信息 --help示例appcrawler -a xueqiu.apkappcrawler -a xueqiu.apk --capability noReset=trueappcrawler -c conf/xueqiu.json -p android -o result/appcrawler -c xueqiu.json --capability udid=[你的udid] -a Snowball.appappcrawler -c xueqiu.json -a Snowball.app -u 4730appcrawler -c xueqiu.json -a Snowball.app -u#启动已经安装过的appappcrawler --capability appPackage=com.xueqiu.android,appActivity=.welcomeActivity#从已经结束的结果中重新生成报告appcrawler --report result/#新老版本对比appcrawler --candidate result/ --master pre/ --report ./#自动生成Page Object代码模板文件appcrawler --template PageObjectDemo.ssp --output result/#根据wda的inspector生成测试用例代码appcrawler --template PageObjectDemo.ssp -u http://localhost:8100重构了一半多的代码. 提升了性能, 改进测试用例生成的方式. 更快更稳定.
所有的action字段都支持简单的动作和完整的scala编程语句, 样例如下
以前的是MiniAppium.xxx, 新版本修改为driver.xxx, 这个driver就是selenium的driver
Appium失败重试如果appium崩溃了(主要是uiautomator的崩溃), appcrawler会自动重启appium继续测试.
这样需要修改你的遍历配置, 设置为 dontStopAppOnReset: true
进行了更好的分类管理. 根据页面进行分类.
目前可以根据老版本的运行结果来断言新版本的老功能是否符合预期.
分为结果对比和数据对比, 降噪还没实现.
之前硬编码了使用老的uiautomator模式, 这次放开了automationName, 可以支持uiautomator2和macaca了
在automationName处可以指定macaca, 其他配置跟appium一样.
用来判断app有没有崩溃, 或者点击后有没有特殊的需要注意的控件
asserts:- given: - //* when: [] then: - //*[@package="com.gotokeep.keep"]- given: - //*[@text="发送朋友圈"] when: [] then: - //*[@package="com.tencent.mm"]比如设定了断言所有的预期结果里面, 包名都必须是keep, 那么遇到拍照或者发朋友圈, qq登录的地方, 就会提示错误.
[attach]107218[/attach]
[attach]107219[/attach]
可以通过断言预期结果的基本内容.
完整的自动化用例支持在2.1.0版本再放出来. 目前的只是demo, 只是用来辅助自动遍历的.
testcase: name: demo1 steps: - when: xpath: //*[contains(@resource-id, 'text_home_train_collection_title')] action: driver.swipe(0.5, 0.8, 0.5, 0.2) then: [] - when: xpath: //*[contains(@resource-id, 'text_home_train_collection_title')] action: driver.swipe(0.5, 0.2, 0.5, 0.8) then: [] - when: xpath: //*[contains(@resource-id, 'text_home_train_collection_title')] action: tap then: - //*[contains(@text, "置顶")] - when: xpath: //*[contains(@text, '置顶')] action: click then: - //*[contains(@text, "添加训练")] - //*[contains(@text, "故意错误")]ChangeLog和下版本的计划目前为2.0.0版本
2.1.0会未发布的下个版本计划
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) | Powered by Discuz! X3.2 |