如何做好自动化测试

时间:2021-02-24 05:56:22

做好自动化测试必须具备独立编写测试脚本和开发测试工具的能力,因此自动化测试人员需要有很强的编程能力这样才能随心所欲的开发测试脚本。
自动化测试分3个层级,1、最底层单元测试(收益70%) 2、中间层接口测试(收益20%) 3、最上层是ui测试(收益10%)。其中单元测试是基于类和方法的测试,包含的代码会比较少,测试中容易定位问题而且执行也会比较快,这对于分析问题、解决问题非常方便,因此适合大规模的回归测试。第二层的是接口测试,接口测试是把一些整体功能做一个封装,然后对外提供服务,它不是单纯的基于几个类或方法的测试,更多地是针对接口的功能进行测试。通常它封装了一些比较大的功能的接口,一旦接口对外提供服务了就很少会进行一些更改或变更,一般只会增加或删除某些接口,因此接口层一般不会什么很大的变化,非常适合自动化测试。
自动化测试适合不经常变化的功能,而UI层是最容易变动,所以做自动化最麻烦,难度比较大。
单元测试也可以定义为白盒测试,但是单元测试不一定全都是白盒测试,可能也会增加一些黑盒测试的设计角度,大部分都是基于代码逻辑的测试,一般由开发人员来做;中间接口层是基于接口实现的功能进行测试,一般由测试人员做,接口测试更适合自动化;而UI层的自动化测试需要有一个好的测试框架,测试框架大致分为以下几类:分布式的设计,行为测试驱动框架,关键字驱动,数据驱动框架,混合型框架(即支持关键字驱动又支持数据驱动)。
目前做的最多的测试有接口测试和服务器端测试,接口测试主要测试输入与输出,服务器端测试更关注与算法实现的一些细节、分支等。
功能测试转自动化测试需要具备很强的编程能力(一万行代码),对技术、测试框架和开发架构的理解能力,并且还需要慢慢积累其它方面的知识,包括一些算法,数据库、linux、操作系统的知识。