工具篇 | 浅谈测试那些恩怨情仇。。。

Posted HLQ_Struggle

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了工具篇 | 浅谈测试那些恩怨情仇。。。相关的知识,希望对你有一定的参考价值。

文章目录

以不变应万变,万变不离其宗。

前言

测试的重要性,不言而喻。

身为开发的我,在离职廊坊的某公司后,无数次的怀念小路童鞋,其测试专业性以及敬业程度让我曾经一度吐槽,你好烦。不过可以得瑟的是至少软件很湿稳定,至少没有出现过大型严重 Bug。

在没有测试童鞋的情况下,我们又该如何保证自己的 Bug 率不是那么傲然挺立呢?

本文整理了部分辅助测试的工具,尽力而为。

那些测试工具

互联网发展到现如今,测试工具玲琅满目,这里简单整理了以下三种方式,以供参考。

一、人肉测试

人肉测试,可谓是行业中最普遍的情况了。

通常来讲,软件发布前,开发人员需要至少通过一次自测,随后才交给测试同学。

而我个人目前所接触到的测试童鞋的流程如下:

  • 所提交的软件业务是否完整闭环;
  • 细节性以及用户友好度处理是否得当;
  • 兼容性如何

当然,实际上的情况往往要比以上更加复杂,某些不好的情况下,提交一个 bug 在修复后往往会得到更多的 bug,一次次挑战测试人员的心态极限。默默心疼阿帆童鞋。

作为目前小公司通用情况之一,劣势也是满满:

  • 兼容性无法测试完整;
  • 业务流程完整闭环以及业务异常走向无法测试到位;
  • Bug 反馈开发童鞋排查较为困难。曾经遇到的一个事例,线上反馈点击与实际不符,具体点击位置不详,给出的 Bug 情况描述与实际不相符,结果直接导致我基于某东七天无理由退货采购一台客户相同设备进行测试,然而什么都没测试出来。最后还是老韩反馈了一个疑点,分分钟搞定。
  • 基准不同,效果不同,用户体验较差。
  • 。。。

鸡老大说过,凡事儿尽力而为。

好吧。人肉测试,普通而通用,感谢各位小伙伴吧。

二、Monkey - 压力测试

作为移动端开发人员,个人测试必不可少,压力测试尤为重要。

推荐一款神器:Monkey,这里截取了官方部分说明,文末附上官方链接。

Monkey 是一个在模拟器或设备上运行的程序,可生成伪随机用户事件(例如点击、轻触或手势)流以及很多系统级事件。

在实际使用中,我们可以通过 Monkey 对当前 App 进行压力测试,而测试范围如下四个类别:

  • 基本配置选项,例如设置要尝试的事件数;
  • 操作限制条件,例如将测试对象限制为单个软件包;
  • 事件类型和频率;
  • 调试选项。

Monkey 在运行时会生成事件并将其发送到系统。它还会监视被测系统并查找三种特殊情况:

  • 如果您已将 Monkey 限制为在一个或多个特定软件包中运行,它会监视转到任何其他软件包的尝试并阻止它们;
  • 如果应用崩溃或收到任何未处理的异常,Monkey 会停止并报告错误;
  • 如果应用生成“应用无响应”错误,Monkey 会停止并报告错误。

实际来操作一番吧。

首先确保当前电脑已有 adb 环境:

没有的小伙伴可直接进入本地 SDK 存放地址查找,如下图:
Monkey 基本语法如下:

$ adb shell monkey [options] <event-count>

当然也可以在使用中直接通过 help 命令查看:

而在工作中最常使用的命令如下:

adb shell monkey -p your.package.name -v 500

其作用为,给指定包名的 App 发送 500 次模拟事件。

三、PerfDog 性能狗

最初关注狗子时,官网还是一页,上面写了关于狗子的一些描述,网页很糙,但是对内容很感兴趣。

玩狗子前需要基于以下俩点:

  • 已安装 PC 端狗子 App;
  • 已在官方注册账号,领取新人礼包。

随后我们登录上来,发现已经为我们自动检测当前的设备,有线和无线都已在列表,很 nice。

随后选择有线设备,这时候会在手机上安装狗子 android 服务,选择同意安装即可:

安装完成后,则会显示当前设备的基本信息:

随后选择要进行调试的应用:

打开要测试的应用,选择 PerfDog 右上角录制,随后开始操作 App,此时 PerfDog 开始记录当前操作下的各个数据:

一个流程执行完毕后,点击右上角暂停录制并将数据提交 PerfDog 平台:

右下角加号点击可选更多参数:

提供的功能相对还是比较完善。

  • 截图
  • FPS
  • CPU
  • 内存
  • 网络
  • 电量
  • 。。。

按需操作吧。

点击 PerfDog 客户端右上角小云朵 ☁️ 图标,进入 PerfDog 网页端查看我们测试报告。

  • FPS:
  • CPU:
  • Memory:
  • Network:

    这块属于个人知识盲区,这里暂时不对此数据进行分析。

简单评价下个人使用感觉吧:

  • 现有功能较为全面,测试入手成本低;
  • 测试结果虽然较为全面,但是对于新手分析结果成本较高,希望多一些对结果的实际解释或者方案,更加平易近人;
  • 提供一些涉及到的专业性阐述就好,无需用户 Google 搜索,站内即可解释涉及到的知识盲区。

四、 WeTest 平台自动化兼容测试

这块也是查看 PerfDog 偶然发现的,顺手测试个已上线的版本,看看兼容性如何。

随后选择机型,这里采用默认推荐即可,顺手再点个安全扫描。

的亏新人礼包送了一些体验资格:

提交成功,静待佳音~

大概二十分钟左右,测试完成,到时回邮件通知。

一起来看下报告。

1. 设备通过率:80.0%

问题机型主要为 6.0 以下,此项目狂野的最低兼容 Android 6.0。

2. 问题列表


安装失败原因以上一说过,最低兼容 Android 6.0 。这里看下进程退出这个什么鬼。

截图由于项目性就不外放了,感兴趣的小伙伴可以在各大应用市场下载体验并随时开喷 bug。

流量的消耗,有点心疼啊。还是需要持续优化。

此块内容很丰富,相关截图、Log、异常设备机型等等一应俱全,值得体验。

3. 安装包检查


点击对应的项,里面建议蛮详细,给力~

其他就需要小伙伴自己发掘咯。

参考资料

CSDN 社区图书馆,开张营业! 深读计划,写书评领图书福利~

以上是关于工具篇 | 浅谈测试那些恩怨情仇。。。的主要内容,如果未能解决你的问题,请参考以下文章

细数研究生和导师的那些恩怨情仇

我与ActiveMQ的恩怨情仇

Docker与k8s的恩怨情仇——Kubernetes的创新

Docker与k8s的恩怨情仇—用最简单的技术实现“容器”

Docker与k8s的恩怨情仇—后浪Docker来势汹汹

MSVC與CRT的恩怨情仇