基于代码的自动化测试工具相比,无代码自动化测试工具的未来是什么?

在这里插入图片描述
无监督自动化测试,这个在我司有一定的应用; 不是我这边来做的,我这边只能说解释下思路。

首先说一下它的思路。

所有自动化测试中,最容易被自动化,以及投入产出比最高的,一般来说就是在接口测试上。对于接口测试来说,测试行动如果要自动生成,大概有两个思路:

1 通过接口定义文档or文件来自动生成; 它的好处是,可以知道入参的情况(请求参数,请求头,请求体),所以会很方便做参数组合。

2 通过线上流量录制后回放。这里也可以对入参进行一定的智能组合。然后我们需要来看,测试验证如何自动生成。

在1的思路下,接口定义一般很难对异常场景进行描述,也几乎不描述响应中的含义(响应结构体是有的)。所以这样基本只能验证status code等于200,这就很局限了,懂得都懂。

在2的思路下,没有上述问题,所以如果我们要做深入,一定是基于“线上流量录制后回放”。

录制回放的话题很大,方案其实很多,这里就不扩展来聊了; 这里说下录制回放对于无监督自动化测试的应用。

首先我们可以理解成,录制下来的流量,有请求和响应,处理之后就可以自动变为用例的行动和验证。我们可能要过滤下域名,处理cookie,以及对重复效用的请求做去重; 但此处不能过滤403,500的请求,因为这样的异常情况要么是bug,要么是一些非常珍贵的异常场景(有效的异常测试)。

测试的时机,其实还是在上线前; 而由于线上的流量录制与回放,是基于真实环境的,所以我们要提供完整的服务环境和数据库。这在大公司重新搭一套是很难的,所以更合理的方案是:

流量上使用灰度环境,而这个测试流量进入数据库时,采用影子表来避免影响(或者数据库只读,不能写,但这个局限性又很大了)。

通过对比版本上线前后,对于同一套请求的响应的差异,来判断本次上线对回归功能的变动情况。

当然最终还是需要人来进行一些打标,来标注测试失败的原因; 而run几波之后,可以通过人的标注让机器对代码的生成和剔除更加的合理; 这里是可以使用ai算法模型的,这里我不懂,就不瞎说了。

那么整套思路可以整理为:

1 流量录制,对入参进行组合

2 上线前,流量回放到灰度环境,判断跟之前版本的响应差异来确定测试是否通过

3 使用流量隔离和影子表来消除影响

4 人工打标失败用例,训练生成用例的模型

那么这套思路的局限性大概是:

1 对新功能和新接口是没有测试能力的

2 对于对数据有修改的请求来说,误报率可能会很高,除非你频繁准备初始数据(也就是频繁dump那个影子表)

3 依赖量级极高的用户请求,这样才能有复杂的请求和测试用例

4 对灰度和流量控制有极高的要求

下面是我在做自动化对于技术一些归纳和总结,希望能帮助到有心在技术这条道路上一路走到黑的朋友!附带教程学习资料~

在这里插入图片描述


这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

关注我的微信公众号:【伤心的辣条】免费获取~

我的学习交流群:902061117 群里有技术大牛一起交流分享~

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

好文推荐:

阿里小黑叹息:越来越多的年轻人从职场撤退了?

Python简单?先来40道基础面试题测试下

App公共测试用例梳理

从一名开发人员转做测试的一些感悟

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值