自动化测试工具开发入门

Posted 测试进阶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自动化测试工具开发入门相关的知识,希望对你有一定的参考价值。

测试开发,怎样算入了门?

对于测试人员来说,很多人通过一到两个月学习,都有能力写简单脚本来做一些自动化测试。我看到有很多人走到这一步就停下了脚本,开始不断重复这一两个月的经验,由始至终都在写一些简单的脚本。那么,接下来怎么走呢?

进入自动化测试领域之后,第一个门槛就是:能不能自己开发测试工具。

这里我说的测试工具,指一切能辅助测试人员提高工作效率的工具。它可能是一个批量生成测试数据的脚本,也可能是针对现有工具的一些二次开发,对第三方工具的一些封装,甚至是一个web网站形式的测试管理系统,或者一套接口,一套数据报表,等等。

别人的代码我能看懂,但为什么他们要这么写?

我刚开始做自动化的时候,看过一些别人写的小工具的代码。实际上我在诺基亚新员工训练营里接触的第一个项目就是基于别人给的一些现成代码来做改动。可以说,他的代码我每一行都能看懂,但是,连在一起就让人很迷茫了,我就想问“到底为什么他要这么写?”

要是我来设计这个工具,我会怎么设计?最开始我对这个问题是没有答案的,要是让我设计,我两眼一抹黑啊,根本不知道从何入手。

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

后来我花了两年时间才弄懂“为什么他们要这么写”的问题。而且,这个地方是有套路的。实际上,按照一定的套路去思考,设计一个或者简单或者复杂的工具,并没有多少难度。而我当时看到的工具的代码,已经是一个经过n多次改进后的版本。理解代码的改进过程,就能理解他们这么写的原因。

开发语言的选择和工具开发

但是实际工作中,为了快速开发,或者为了重用第三方的库或代码,大多数时候不会限制死在一门语言上。比如,如果要开发jenkins pipeline,就得用groovy,要开发页面前端,就离不开java script,有些历史遗留工具可能是python 2写的。

我用过最古老的测试工具是一个20年历史的,拥有java swing图形界面的神奇的工具。。。我们在用它的时候已经没人懂怎样改这个工具的代码了。

所以,其实开发语言并不是关键,关键是设计思路。

我的建议是,至少掌握python或java(最好都会),外加javascript。至于其他语言之类的,用到的时候快速学习即可。


Live分享


感谢知乎提供平台,我将于2018年3月21日晚上9点,为大家做一场关于测试工具开发的分享,欢迎大家参加和交流。

次live会分享:

1.测试工具开发的基本思路或者说套路。

2.我实际工作中开发的工具里四个比较典型的实例的设计思路,工具选型和遇到的问题。

(不涉及具体代码实现,你用java或其他语言也一样适用这种思路)


本次live适合:

1.想从手工测试转型自动化测试的测试人员;

2.正在从事自动化测试相关工作,但遭遇瓶颈,想在技术上更进一步的人;

3.想了解怎样开发测试工具的人;

4.想通过技术手段提高测试效率的人;


以上是关于自动化测试工具开发入门的主要内容,如果未能解决你的问题,请参考以下文章

前端单元测试以及自动化构建入门

接口自动化测试——入门

超详细从入门到精通,pytest自动化测试框架实战教程-allure测试报告

Jenkins 自动化部署入门详细教程

接口自动化测试,完整入门篇

appium入门级教程—— 安装Appium-Server