为什么团队的自动化没有效果?
在每个公司领导想做自动化很大程度上是想要提升产品的质量,但是实际情况的自动化是什么样呢?随着迭代的增加,自动化用例的基数越来越大。开发同学修改接口或者页面元素,相应的自动化脚本就需要同步的进行变更,维护成本也随着用例数量的增加而增加。但是随之而来的产品质量的提升并没有做到,因为大多数的自动化用例是无效的用例,只是重复的在UI自动化以及接口自动化进行了重复验证,所以大家都会在思考一个问题,做自动化的意义在哪?
我觉得团队实施自动化的意义在于:提升测试效率。将原来需要手工执行的测试用例转换为自动化用例,提高测试用例的执行时间,在开发写代码的同时,测试进行自动化脚本编写,在开发完成代码编写后即可进行验证。减少了原本需要大量的时间去进行手工验证的过程,但是在这个阶段会发现手工执行的测试用例转换为自动化用例的过程会出现前置数据难以模拟,从而测试效率不能进一步提高。
那么如何做更好的自动化去提升测试效率呢?最好的自动化是要做到分层自动化,清楚的了解被测对象的层级,从而针对各个层级进行有效的分层自动化。针对有效的分层自动化,我的建议是首先在交互层进行针对用户操作、JS交互以及JS逻辑的验证,确保前端的数据展示页面交互的准确性。然后在逻辑组合层进行数据发送报文、数据接收地址、数据返回报文的验证,确保接口层的逻辑处理以及接口的出入参数据类型必填参数符合规范。最后在数据处理实现层进行数据接收、数据结构转换、数据逻辑处理、数据库逻辑处理的验证。在不同的层级进行配对的测试,分层自动化的本质需要对业务的被测对象进行深度了解,需要看透操作的本质、了解协议的组成以及数据的流动。所有自动化的基础都是以业务价值为目标。
所以,你找到你的团队为什么自动化没有效果的原因了吗?
|
时间 |
课题 |
周一 |
20:00 腾讯课堂 |
《敏捷测试从零开始》 |
周二 |
20:00 腾讯课堂 |
《测试开发从零开始》 python篇 |
周三 |
20:00 腾讯课堂 |
《运维从零开始》 |
周四 |
20:00 腾讯课堂 |
《测试开发从零开始》java篇 |
微信号 : TestOps
知乎:@TestOps云层