Lowen android CI 自动化测试

引用

Jez Humble提到至少有六点要做到自动化,
它们分别是(1)自动化的运行测试;
(2) 自动产生可部署的二进制成品;
(3) 自动将成品自动部署到近似生产环境;
(4) 自动为CodeBase打上标签;
(5) 自动运行回归测试;
(6)自动生成度量报告。

说明

Lowen 基于monkeyrunner的android应用的自动化测试,并输出测试结果到html的框架
仿腾讯utest测试框架

github地址:Lowen欢迎拍砖

代码有待完善,欢迎有兴趣的朋友一起讨论

主框架代码

bin\main.bat
- 循环执行N个py脚本
- 1.初始化路径,时间
- 2.开启线程记录cpu,内存等日志
- 3.开启线程记录adb log日志
- 4.执行py脚本
- 4.1运行脚本
- 4.2批量处理截图加上水印(通过bin\ImageMarkClickLogo.jar)
- 5.关闭记录日志的线程(关闭窗口)
- 6.读取adb log日志 判断是否crash
- 7.输出html报表

usage

  • 修改bin\main.bat 里面的apk 路径
  • 修改tools\monkey_playbackNew.py 里面的apk 路径 ,和包名
  • 修改tools\monkey_test.py 里面的apk 路径 ,和包名
  • 脚本修改完成直接运行lowen.bat

运行环境

  • windows,安装sdk,jdk,python2.X
  • 涉及到bat脚本,python脚本,java 开发,android sdk里面的monkeyrunner框架使用等

部分文件介绍

  1. monkey_recorder.py

    • 主要用于录制点击等事件的脚本
  2. monkey_playback.py

    • 主要用于执行monkey_recorder.py录制的mr结尾的脚本
  3. mr

    • mr文件夹下面主要放录制的操作脚本
    • sfadaka1.mr是sfa登陆到进入客户查询列表脚本-支持华为荣耀4A手机

注:如果运行中文乱码,需要将所有py脚本改为utf-8编码

  1. testn.py 用于自动化随机模拟测试app的脚本,修改里面的启动app包名
    eg:
    G:\lowen>monkeyrunner tools\testn.py

  2. bin\ImageMarkClickLogo.jar

    • 用于图片添加水印的工具包
    • 用法详见testn.py
      ‘java -jar ‘+basePath+’bin/ImageMarkClickLogo.jar -l -cl c=#00ECdF s=50 out=’+outpath
  3. bin\HtmlOutPutCore.jar

    • 用于将测试结果生成html报表的工具包
    • 用法见bin\main.bat
      java -jar %basePath%\bin\HtmlOutPutCore.jar out=%currentTestName% path=%basePath% -l apkPath=beta.apk aaptPath=%basePath%bin\aapt.exe result=%rrrstr% starttime=%starttime% endtime=%endtime%

注:如果输出html中文乱码,需要将所有html_model模板改为utf-8编码,jar里面控制的是utf-8编码

eg:

  • G:\lowen>monkeyrunner g:\lowen\tools\monkey_playbackNew.py .\mr\sfadaka1.mr

QQ兴趣群号

378333421,欢迎有兴趣的同学们一起研究

demo 地址

输出报表(目前报表里面使用echarts部分没有写数据处理逻辑,框架已搭好)

输出报表

操作记录

输出操作记录

输出错误日志

输出错误日志

输出报表列表

输出报表列表

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值