App的回归测试,有什么高效的测试方法?

直接抛出观点:高效的测试方法当然有,那就是采用【接口+自动化】。

为了系统阐述这个问题,让你能有较强烈的获得感,本篇文章将采用下列结构进行展开:

1、回归测试,测哪些东西?
2、传统的回归测试是如何测试的?
3、高效的回归测试怎么做?
4、高效方法具体如何做?
5、接口自动化怎么做?
6、学习资源分享。

别走,现在就讲。

一、回归测试,测哪些东西

回归测试是软件测试过程中的一个重要的环节,如果说冒烟测试是对软件质量的抽检,那么回归测试就是保证软件质量的最后一道屏障。

一个APP,可以分为前端和后端(也称为服务端),前端包含UI样式、交互效果、视觉体验等,服务端包含数据存取及计算、逻辑交互等。回归测试就是通过对新老功能所有场景的最终测试,找出前后端可能存在的问题。

根据统计,回归测试中发现的bug,大多数是由于新功能上线后与老功能逻辑冲突或数据不兼容等引起。

二、传统的回归测试

回归测试中,这些潜在的bug如何验证?传统的方法就是手动回归。

把APP按模块划分非几个测试人员,分别验证各模块的新老功能。但是这样的验证方式缺点很明显,需要耗费较多的人力和时间。
在这里插入图片描述

面对软件的频繁更新迭代(某些软件不是按月更新,有时是按周来进行更新),手动验证显然太费时费力了,那么,如何高效地进行回归测试?

三、如何高效回归测试?

分析潜在问题产生的原因,我们就会发现,后端(服务端)是个重灾区。比如前面所说的数据不兼容、逻辑冲突等,这些都是属于的后端范畴。

如果能够把这个重灾区快速治理好,今天的问题就有了答案。
在这里插入图片描述

很幸运,互联网的前辈已经帮我们探索总结出来了很多好用的方法,那就是用 【接口+自动化】来做回归测试。

四、高效回归测试则么做?

【接口+自动化】包含了接口测试和自动化。接口测试即通过对接口请求返回数据的校验来做验证;自动化指的是多个测试场景之间,参数的传递和逻辑的交互实现整体串联,校验最终的结果。下面通过具体数据来对比,传统手动回归测试接口VS自动化回归测试。
某信APP【通讯录】做了功能优化,现在到了回归测试环节,需要你给出测试估时。首先要知道【通讯录】有哪些小功能要回归,下面我们简单罗列一下,请看下方图片

在这里插入图片描述

 

功能太多,如果全部列出来,估计一张A4纸都不够,这里仅列出少部分,如果按照接口估算,大概有100个接口。

这么多功能都从头到尾走一遍,一个人肯定是不够,一般来说至少需要4人(每个人验证两个一级功能,每人3小时,这样算下来 需要的工时一共是 「4人x3小时」。

如果使用接口自动化来做回归测试呢?

一个接口请求的响应时间基本在200ms以内,为了方便计算,就算1s好了,100个接口验证三次,时间给它算30分钟(肯定是够了),再加上发现问题后调试排查重试等再给30分钟,所有的时间加起来就是「1人x1个小时」

从12小时的工时到1小时,这是可明明白白的效率提高!

看到这里你一定想说:效率我看到了,赶快告诉我接口自动化怎么做?

五、接口自动化怎么做

接口自动化的实现,当然是要靠框架。推荐几个主流框架:

1)Java常用的测试框架

java类框架有JUnit和TestNG,二者的对比如下图:
在这里插入图片描述

相对于JUnit4来说,TestNG功能更加丰富。

从实际使用的角度来说,参数化的设置及功能,以及处理有上下依赖关系的测试时,JUnit测试框架有着明显的不足。因此,一般都会使用TestNG(推荐)。

2)python常用的测试框架

常用的有Unittest、Pytest。它们的区别如下,各有特色,可以根据自己的业务需求来选择

在这里插入图片描述

了解了这些区别,就选择一个适合自己的赶快学起来吧。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值