Python-自动化测试-自定义框架浅谈

为什么需要自动化测试?有部分原因是说可以提高相关质量,但更多的,应该是减轻工作量。

对于频繁的回归,又或者时不时的全量,如果仅仅只是靠与开发交流和业务的熟知,而进行经验推断,往往测试的结果是毫无说服力且较难令人信服的。虽然事实上,对于长年工作者,很多重要问题都是通过经验发现,但事实的另一面却也的确存在,很多普通问题会被因此错过。

过于依赖经验,带来的问题是,主观判定了相关团队对于某类或几类问题是正确的,但实际,往往会让你大吃一惊。原因可能来自于团队的某个环节又或是团队之间的协作,甚至,是你自己。

于是,我们基于对质量提高兼且减轻工作又或是其他原因,开始了自动化测试(因为在大多数时,机器会比人更可靠,即对于执行固定规则的事务流程会更为精确)

一开始我们会直接在一个文件里写入所有相关测试的内容,但时间久了,对于频繁调用眼熟的接口就会予以厌烦,所以抽象出一个业务层进行专项接口调用,会是更好的选择。

当然,一些精致小巧的方法也会在这过程中一一展现,于是工具层就自然而然出现了

然后,回归测试本身,显而易见,也应该包含有一个测试层,用于各类场景的测试(不同环境、不同测试类型【接口、数据库、页面、服务器、缓存等等】、不同业务、不同项目、不同功能)。

最后,测试的整个周期,离不开数据的存储与提取,因此,我们还需要一个配置层。

一个比较合理的测试框架雏形大致如下:

工具层    

配置层    

业务层

测试层

它的目的大致是:

1、记录测试操作步骤,通过测试层

2、保存正确的测试数据,通过配置层

3、详尽的日志记录,日志系统

4、可以关键字驱动,用以批量测试

5、可以进行不同测试类型的业务混用

等等。

相关的数据大致可以分为五类:

1、小量测试,自定义测试,快捷测试的数据          

2、模板化的初始数据                                              

3、某个业务、项目、功能的特定数据

4、多次执行正确的正确数据

5、大量测试,以测试模板数据方式进行

优先级为1=5>4>3>2

最后,需要思考的是,自定义测试框架相较于市面上流行的工具,譬如postman,selenium,navicat,lr,jmeter,xshell等等的最大优点是什么?

个人觉得是集成,你可以把各个不同的测试类型放在一起混合调用(譬如,当你用接口新增数据数,可以用数据库删除该记录,用以保持环境的整洁等等),用以记录更为详尽的操作步骤。(有时,整个测试流程可能是繁琐且多样的)

撇开这一点,熟练的运用其他相关工具并没有什么不好,毕竟,自定义框架本身也只是工具的一种,都是为了结果服务。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值