首先什么是自动化测试?
顾名思义,让工具代替人工进行测试。自动化我又细分为UI自动化和接口自动化。
UI自动化:录制或编写测试脚本,模拟人工操作页面元素进行功能测试。它的原理即根据页面元素属性值识别元素,模拟人工进行点击、输入等操作。
接口自动化:编写测试脚本,调用接口参数进行接口测试。它的原理即根据接口地址及报文,模拟接口请求,检查接口返回数据的正确性。
所以UI自动化是包含了一部分的接口测试,而接口自动化纯接口验证。
那么自动化可以替代人工吗?答案必然是否定的。
自动化测试的意义?
提高测试效率。
很多人有误解,感觉自动化测试多么厉害多么省心,包括开发也会说,不是有自动化吗?跑一下就可以了,省时省力,是吧。其实不管是UI自动化还是接口自动化都有弊端,稍后我们来分析一下。
什么样的项目适合自动化测试?
UI自动化:趋于稳定的项目,页面元素改动较小。
接口自动化:大部分项目都适应,毕竟接口大改还是比较少的。
那它们的优缺点也就显现出来了:
UI自动化:
优点:模拟用户操作,兼顾着接口一起跑流程。
缺点:页面元素变动快,维护成本高,执行效率和运行结果与网速有直接联系。
接口自动化
优点:维护成本低(测试脚本简单),执行效率高。
缺点:仅用于接口功能验证,不能完全代替人工。
它们的优缺点已经很明显了,那你的项目适应哪个,就根据项目的实际情况来定。