Jenkins 集成 monkey

目录

前言:

jenkins

monkey

jenkins+monkey

模拟器配置

真机配置


前言:

在软件开发过程中,测试是非常重要的一个环节。而在测试过程中,自动化测试又是非常重要的一部分。随着 DevOps 的流行,自动化测试已经成为了一个必不可少的工具。而 Jenkins 作为一个开源的持续集成工具,可以非常方便地实现自动化测试。而 Monkey 则是一个 Java 平台下的测试工具,可以用来执行一些随机的、压力测试等。

jenkins

jenkins 是基于 java 开发的一款持续集成工具,用于监控持续重复的工作,多用于搭建持续集成环境。相信各位测试同学对 jenkins 并不陌生。

monkey

Monkey 是 google 提供的一个命令行工具,可以运行在模拟器或者物理设备中。monkey 通过向系统发送按钮、手势、触摸屏输入等伪随机用户事件,对软件进行稳定性与压力测试。从事移动端测试的同学,想必对 monkey 工具的使用也轻车熟路。

jenkins+monkey

很多移动端测试团队都使用 jenkins 搭建了持续集成环境,用于自动代码拉取、构建和打包。然而有的测试同学,在使用 monkey 工具进行稳定性测试的时候,仍是通过手动执行命令的方式启动测试。其实我们可以将 monkey 测试集成到 jenkins 中,这样在构建新任务过程中可以在闲置的测试手机上立马进行稳定性测试。
下面,我们来看看如何将 monkey 集成到 jenkins 中。执行 monkey 测试有两种方式,一种是在模拟器中进行测试,另一种是在真机上进行测试。如果手头没有测试机,可以选择在 android 模拟器中进行 monkey 测试。

模拟器配置

  1. 安装 android 模拟器插件
    在 jenkins 的系统管理--》管理插件中,选择 android emulator plugin 进行安装。安装插件后,在已安装列表中可以查看到该插件。

  2. 构建环境配置
    安装了 android emulator plugin 之后,在构建环境中勾选 “Run an Android emulator during build” 选项。并对 android 模拟器进行配置。主要对 android 系统版本、屏幕分辨率、sd 卡容量进行配置。我们可以依据自己的测试需求,进行相应的配置。

     

  3. 构建配置
    构建的配置,需要进行两项配置,Install android package 和 Run android monkey tester。
    Install android package 主要目的是把构建包安装到手机。
    Run android monkey tester 主要是启动 monkey 测试,并对运行参数进行配置。运行参数包括 monkey 测试过程中模拟的事件数量、事件间隔时间等。在高级选项中测试者可以依据自身需求添加更多配置。output filename 选项对 monkey 测试结果文件名进行配置,默认情况下生成的测试结果存放在工作空间根目录下的 monkey.txt 文件中。

     

  4. 构建后操作
    构建后操作可以选择 Publish android monkey tester result。
    这样在构建完成之后,可以一目了然的看到 monkey 测试是否成功。该选项需要设置两个参数,分别是 filename 和 set build result。参数 Filename 顾名思义是指定 monkey 测试生成的结果文件名称。如果没有指定 filename 的值,默认情况下会到该任务的根目录下面读取 monkey.txt 文件。如果在 Run android monkey 中对 output filename 进行了修改,那么 filename 应该与 output filename 保持一致。set build result 选项是设置当 monkey 测试出现 Crash 或 ANR,应该呈现的结果状态,默认情况下为 unstable。

     

真机配置

很多情况下我们选择真机做 monkey 测试,结果更加可靠。下面,我们看一下如何用 jenkins 搭配真机进行 monkey 测试。在配置 jenkins 之前,我们需要确保 PC 端已经配置好了 android adb 的环境变量。

1.参数化构建
由于 monkey 测试需要进行一系列参数配置,所以我们可以在 jenkins 的 General 中配置一些构建过程中需要使用的参数。例如,monkey 运行的参数 evencount,seed 都可以在此进行输入配置,可以更加灵活的控制 monkey 测试。
同时,我们可以配置一个布尔变量,作为此次构建是否执行 monkey 测试的判断依据。这样便可以将普通构建任务和执行 monkey 测试的构建任务放在一个任务配置中,而不需要配置多个任务。如果该选项被勾选,那此次构建执行 monkey 测试,否则不执行。

参数化构建界面显示效果:

2.构建
采用真机进行 monkey 测试,需要通过 adb 命令来启动 monkey 测试。所以需要在构建步骤中增加 execute shell 选项。然后在选项中,添加执行 monkey 测试的脚本。脚本主要执行两项任务,首先将构建的包安装到手机端,然后启动 monkey 测试。脚本中可以使用前面配置的参数,这样方便测试者依据不同的测试需求,构建不同的测试任务。
命令行执行 monkey 测试,基本语法:
adb shell monkey [options] <event-count>

  • event-count: 为必选参数,用于指定 monkey 测试过程中模拟的用户事件数量。
    [options] 主要参数如下
  • -p packageName :该参数指定需要执行 monkey 测试的包名。如果需要测试多个包,需要添加多个-p 参数,每个参数后带一个包名。
  • -s seed :该参数指定伪随机生成器的 seed 值。
  • -v: 指定 monkey 测试结果中输出 log 信息的详细程度,总共分为三个级别。默认级别是 0:-v,测试结果中只包含启动信息,测试完成信息和最终结果信息。级别 2:-v -v,打印测试过程中执行的一些信息,如模拟的用户点击事件。级别 3:-v -v -v,打印最详细的信息。
  • --throttle milliseconds:指定 monkey 模拟事件的前后间隔时间。通过这个选项可以减缓 monkey 的执行速度。如果不指定该选项,monkey 模拟事件将会持续执行,事件间不会有停顿。
  • --ignore-crashes: 该参数指定 monkey 测试过程中是否忽略 crash。如果设置了该参数,测试过程中如果发生了 crash,monkey 测试会继续执行。否则测试过程中遇到 crash,停止测试。
  • --ignore-timeouts:该参数指定 monkey 测试过程中忽略 ANR。如果测试过程中出现了 ANR,将忽略此现象,继续执行 monkey 测试。

  作为一位过来人也是希望大家少走一些弯路

在这里我给大家分享一些自动化测试前进之路的必须品,希望能对你带来帮助。

(软件测试相关资料,自动化测试相关资料,技术问题答疑等等)

相信能使你更好的进步!

点击下方小卡片

 【自动化测试交流】:574737577(备注ccc)icon-default.png?t=N6B9http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=iESu5HhYI4C9RMJ-z7XCnA4D2RmM7sz3&authKey=%2F6ohLAFA%2F0W2oOYbYvIv2UBKiX2R3YMn3h7p2Ybvuf34RFHErbqH%2BJmhURWdWG1t&noverify=0&group_code=574737577

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值