如何有效在日常工作中开发测试工具?

发表时间: 2024-06-19 18:07

BAT大厂面试中,总要求有自动化测试工具经验者优先。那么如何在日常工作开发工作中开发测试工具?

△阿里巴巴测试开发职责要求

工具开发的本质

何为测试工具?就是能辅助测试人员来完成特定的操作的工具。

测试工具开发的本质:最终还是为提效服务。

它可能是一个批量生成测试数据的脚本,也可能是针对现有工具的一些二次开发,对第三方工具的一些封装,甚至是一个web网站形式的测试管理系统,或者一套接口一套数据报表,等等。

如何进行工具开发

那么如何进行工具开发呢?

很多时候限制我们,不是开发语言我会不会用,而是有没有设计思路。

在这里梳理思路如下:

1、现在的测试工作中,有什么是必须要做,而大家做起来比较繁琐或是不想做的事情呢?

2有什么是业务人员,领导或是其他部门的人员比较关注的,而我们没有做的太好的事情呢?

3把上面的问题罗列一下,分析出问题的核心关键,再进行细化

4从网上搜索一下有没有解决相关问题的工具或是方案

通过认真地做完上面四步,一般就能找出你当前业务中急需要解决的问题,从而抽象出要开发的工具,这个就是你的目标,开发工具的切入点

不同的公司、不同的组,组内的基建千差万别,有些之前的公司可以如鱼得水的工具,到了现在的公司可能寸步难行。所以结合当下最有需要的开始入手,便是最明智的选择。

一个思路

进行工具开发是有套路的。

按照一定的套路去思考,设计一个或者简单或者复杂的工具,并没有多少难度。

以一个测试数据构造的工具作为示例来给到一个思路:

  • 工具需求
    • 无论你的能力如何,都不要从零开始去开发一个测试工具。
  • 工具构造预估
    • 首先考虑投入产出比。如果你要花上几个月的时候去开发一个工具,无论这个工具功能如何,都很难得到领导的支持的。
    • 网上去搜一下有没有类似的工具,如果有,其优缺点是什么?能否满足我们的需求?
    • 如果没有,有没有类似的工具呢?最好去github上搜索一个,这些开源的东西方便做二次开发。
    • 当找到一个开源的工具后,下载代码本地运行打包,试一下它们现有的功能如何?
    • 然后再去分析其代码结构,各个模块之间是如何交互的,尝试修改一下代码,能否达到自己的要求。当这一切做完后,你就可以根据自己的需要,对这个工具做二次开发了。
  • 初期功能点设计
    • 支持批量构造数据
    • 支持传入自定义参数
  • 后续优化


尝试体系化

  • 尝试体系化
    • 如果已经开发出测试工具,那么就可以尝试体系化,开发解决一系列问题的平台,对工具使用情况做度量,分析,反馈于测试等等。