接口自动化与ui自动化区别

测试目标

接口自动化:

接口执行效率高,可测试的代码覆盖率高,维护成本低,属于低成本,高收益。

主要关注应用程序的后端功能,通过发送HTTP请求并验证响应是否符合预期来测试API是否按照规范工作。它校验的是客户端与服务端交互的部分,包括业务逻辑以及服务端返回的数据‌。

 

接口自动化测试基本流程:

模拟发送请求

传入接口数据

获取响应结果

断言

 

‌UI自动化‌:

优点是:从用户的角度出发,通过模拟用户操作UI界面元素来验证系统的功能。它更贴近真实用户的使用场景,能够完全模拟用户行为‌

缺点是:UI容易受其他原因(电脑卡顿,浏览器卡顿,手机或模拟器卡顿,网速等原因)影响导致脚本执行失败,覆盖率难以提升,维护成本较高,属于投入较高,收益较低的类型。

 

UI自动化测试基本流程:

进行元素定位

模拟手动操作

输入测试数据

获取输出结果

断言

 

执行效率和稳定性

接口自动化‌:执行效率较高,因为调用接口比打开页面要快很多。接口自动化不存在设备卡顿、系统弹框等问题,因此测试过程更稳定‌。

‌UI自动化‌:执行效率较低,因为需要打开页面并模拟用户操作。UI自动化容易受设备卡顿、系统弹框等因素影响,导致脚本执行失败,稳定性较差‌。

维护成本

‌接口自动化‌:由于接口变更的概率较低,维护成本相对较低。在快速迭代的情况下,页面的改动可能会很频繁,前端小的改动可能需要测试的大改,因此UI自动化的维护成本较高‌。

应用场景和工具

接口自动化‌:常用工具包括Python的requests库等,适用于后端功能的测试‌

UI自动化‌:常用工具包括Selenium和Appium和uiautomator等,适用于模拟用户操作UI界面元素‌

综上所述,接口自动化和UI自动化各有优劣,选择哪种方法取决于具体的测试需求和项目特点。

posted @ 2024-09-26 22:03  干脆面666  Views(61)  Comments(0Edit  收藏  举报
/* 看板娘 */ /* 点击鼠标烟花效果 */