UI自动化与API自动化已经开始互斥了吗?

简介: UI自动化与API自动化已经开始互斥了吗?

大家好,我是阿萨。最近有个同事问:一个功能API自动化做了,UI自动化还需要做吗?



刚接到这个问题的时候我愣了一下。因为这两个自动化主要覆盖的场景完全不同。为啥是互斥的?一般情况下:这2个都是需要的。打个比方:过滤沙子的时候,不同颗粒度的沙子就需要不同类型的滤网去过滤。


首先我们看下UI自动化优点:


它主要覆盖场景就是用户使用场景。模拟用户操作来进行自动化。根据用户操作方法来使用脚本替代用户操作。一般是在功能测试后期代码稳定后实现。


UI自动化缺点:


UI自动化缺点也很明显,依赖开发UI界面的稳定性。所以UI自动化相对来说比较脆弱,维护成本比较高。运行时间长,质量反馈稍微有点慢。而且脚本需要添加等待时间来模拟页面操作后台响应时间。导致脚本鲁棒性不太好。UI自动化投入产出比相对低一些。


再说API自动化的优点:


API自动化运行速度快。质量反馈周期短,能快速给质量提供一个结果来评价质量好坏。而且API稳定后一般不太可能修改。在开发后期就可以开始写脚本。主要在校验前后台数据交换上优势明显。因为输入输出很明确。API自动化投入产出比相对高一些。


API自动化缺点:


API自动化的弊端也很明显。无法校验前端页面代码逻辑。对于复杂的输入和输出解析,穷举各个参数,参数数量超过一定级别后API自动化写作成本太高,耗时太长。


总结:


从上面分析可以看出来两个的侧重点和适用场景完全不同。所以这两个自动化都是需要的。两者并不是互斥的。就跟筛沙子的过程中,粗沙子和细沙子需要不同工具一样。


用人当用长,那么使用工具也是一样的道理。如果一个场景是用户界面经常操作的,那么它就有必要写UI自动化。同时前后台数据有交换的,就需要写API自动化了。


如果项目进度紧张,一定要优先保证数据是正确的,所以更适合API多做些。UI覆盖UAT。


如果前台界面校验逻辑多,UI自动化优势更明显一些,就UI自动化多做一些,API自动化只集中在几个验证数据交换的接口上。


以上仅代表个人观点,如果你有不同观点,欢迎私信交流。


相关文章
|
10天前
|
监控 数据管理 测试技术
实现API接口的自动化
API接口自动化测试的最佳实践包括确定测试范围和目标、编写测试用例、选择合适的自动化测试工具、搭建测试环境、编写自动化测试脚本、执行自动化测试、分析测试结果和回归测试。通过这些步骤,可以提高测试效率和质量,确保API的稳定性和可靠性。此外,还介绍了如何利用API接口测试工具进行性能测试和压力测试,以及常见的挑战和解决方案。
|
11天前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
46 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
10天前
|
安全 测试技术 API
如何实现API接口的自动化测试?
实现API接口的自动化测试涉及多个关键步骤:确定测试范围和目标、编写测试用例、选择自动化测试工具、搭建测试环境、编写测试脚本、执行测试、分析结果和回归测试。选择合适的工具和考虑团队熟悉度是成功的关键。常用工具包括Postman、JMeter和SoapUI。通过这些步骤和工具,可以有效提高测试效率和质量,确保API的稳定性和可靠性。
|
3月前
|
监控 数据可视化 测试技术
Apifox 如何进行 API 自动化测试?经验之谈
选择 Apifox 来进行 API 自动化测试能够确保每次迭代的质量,避免引入新的 bug,还要实现自动化测试、定时测试、产品监控、可视化测试、持续集成等,帮助提高效率,通过设计和执行有针对性的测试用例,来全面验证产品功能,确保软件系统能够正常运行,减少上线后的问题。
Apifox 如何进行 API 自动化测试?经验之谈
|
3月前
|
前端开发 测试技术 UED
【测试效率对比】深入分析:为何UI自动化测试的投资回报率通常低于接口自动化测试?
这篇文章深入分析了UI自动化测试与接口自动化测试的投资回报率(ROI)问题,指出UI自动化测试在某些情况下的ROI并不低,反驳了没有实施过UI自动化就轻易下结论的观点,并强调了实践的重要性和自动化测试在项目迭代中的作用。
82 1
|
5月前
|
API Android开发 开发者
`RecyclerView`是Android API 21引入的UI组件,用于替代ListView和GridView
【6月更文挑战第26天】`RecyclerView`是Android API 21引入的UI组件,用于替代ListView和GridView。它提供高效的数据视图复用,优化的布局管理,支持多种布局(如线性、网格),并解耦数据、适配器和视图。RecyclerView的灵活性、性能(如局部刷新和动画支持)和扩展性使其成为现代Android开发的首选,特别是在处理大规模数据集时。
64 2
|
5月前
|
jenkins 机器人 测试技术
jenkins接入钉钉api接口自动化测试报告自动发送
该教程介绍了如何在Jenkins上实现接口自动化测试的持续集成,并将可视化报告发送至钉钉工作群。首先,确保准备好了自动化脚本。接着配置Jenkins:安装Git插件,设置源代码管理(如Git)和触发器(定时或推送)。使用Post build task插件处理构建后的报告,读取Allure的prometheusData.txt文件以获取测试结果。最后,安装Ding Talk插件,配置钉钉机器人,通过 Dingtalkchatbot 库发送测试报告信息到钉钉群。整个流程包括Jenkins的定时构建、Git仓库的监听以及自动化报告发送到钉钉的通知。
|
6月前
|
Web App开发 JavaScript 测试技术
python自动化测试实战 —— WebDriver API的使用
python自动化测试实战 —— WebDriver API的使用
|
6月前
|
Web App开发 前端开发 Java
Selenium UI 自动化
Selenium UI 自动化
|
6月前
|
监控 数据挖掘 API
京东商品API接口:电商数据自动化的钥匙
京东商品API接口为电商领域带来了巨大的便利和潜力。通过本篇文章,读者应该能够了解如何使用京东商品API接口,并通过示例代码学习如何实际调用API获取商品数据。 随着技术的不断发展,京东商品API接口将继续为电商自动化、数据分析和市场研究提供支持,帮助商家和开发者在竞争激烈的市场中保持领先。我们鼓励读者继续探索和学习,充分利用京东商品API接口带来的机遇。