移动性能测试 持续集成中的 Android 稳定性测试-续

xinxi · 2018年12月07日 · 最后由 xiaoshuangbei 回复于 2019年03月17日 · 1494 次阅读

前言

前段时间在社区中发了一篇持续集成中Android稳定性测试的帖子,https://testerhome.com/topics/16909.

现在做了一个开源版本的,完全脱离主项目、优化一些代码、增加了一些性能数据统计.

项目地址:https://github.com/xinxi1990/maxauto.git

功能点:

使用开源工具Maxim进行Monkey测试,包含如下功能:

1.安装测试

2.启动测试

3.登录测试

4.Monkey测试

5.性能数据统计

6.崩溃日志及崩溃回溯图片

登录测试

需要在lanuchtest/lanuchapp.py实现登录测试,
使用appium进行元素定位即可

可以By.xpathBy.id,后面写元素的值.

self.driver.find_element(By.XPATH,self.sure).click()

环境依赖

1.adb环境

brew install adb

2.appium环境

npm install appium

3.python库

在根目录,执行python setup.py会安装有python需要的库

邮件

需要在report/mailconfig.py中配置发件人相关信息
# 设置服务器,用户名、口令以及邮箱的后缀
mail_host = "smtp.exmail.qq.com"
mail_user = "xxxxx@xxxxx.com"
mail_pass = "xxxxx"
mail_postfix = "xxxxxx"

运行

cd到根目录下

apk_path:本地apk路径
device_name:设备号,使用adb devices查看
run_time:运行时间,单位分钟
mail_list:报告邮件人,多人用逗号分隔

python run.py apk_path device_name run_time mail_list

报告

在report/reports目录下生成,效果展示如下

report1.jpg!

report2.jpg

report3.jpg

结语

最后感谢@zhangzhao4444开发出Maxim这么优秀的工具,欢迎大家fork和star.

共收到 12 条回复 时间 点赞

想请教一下用Maxim跑遍历,去统计Activity的覆盖率,能遍历的Activity比较少,也就是覆盖率比较低,请问怎么去提高覆盖率?😀

Smile 回复

这需要有个能遍历预期值,比如说能遍历到40%包含主流页面,有些页面可能都是看不到的.
比如设置max.xpath.selector 控件优先级、特殊事件等.

我觉得覆盖率还可以啊,一个小时能跑80多个activity呢,楼主你这个遍历的activity覆盖是最后的日志中解析出来的么?

heygrl 回复

max跑完了有个log日志,从里边解析的,但是有个问题.一旦操作异常了就没有log日志,所以我会做个备份,自己记录一下.

xinxi 回复

楼主自己咋记录哟,没跑完就没数据,难道是自己从外围去不断的获取activity数据么,还有你们现在能覆盖多少个activity?

在Windows平台下怎么使用gunicorn服务?

项目在维护的吗?

xenos_liu 回复

在维护,有啥需求和bug,可以加微信沟通

老哥,能加下你的微信吗,好多问题想向你请教~~

最近经常跑着跑着monkey就没了,日志里也没啥错误,然后mokey没跑完的话也没有maxim的统计,报告里很多空的

12楼 已删除
仅楼主可见
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册