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天前
|
监控 数据可视化 测试技术
Apifox 如何进行 API 自动化测试?经验之谈
选择 Apifox 来进行 API 自动化测试能够确保每次迭代的质量,避免引入新的 bug,还要实现自动化测试、定时测试、产品监控、可视化测试、持续集成等,帮助提高效率,通过设计和执行有针对性的测试用例,来全面验证产品功能,确保软件系统能够正常运行,减少上线后的问题。
Apifox 如何进行 API 自动化测试?经验之谈
|
9天前
|
前端开发 测试技术 UED
【测试效率对比】深入分析:为何UI自动化测试的投资回报率通常低于接口自动化测试?
这篇文章深入分析了UI自动化测试与接口自动化测试的投资回报率(ROI)问题,指出UI自动化测试在某些情况下的ROI并不低,反驳了没有实施过UI自动化就轻易下结论的观点,并强调了实践的重要性和自动化测试在项目迭代中的作用。
20 1
|
4月前
|
弹性计算 JSON Shell
基于Web API的自动化信息收集和整理
【4月更文挑战第30天】
53 0
|
3月前
|
API Android开发 开发者
`RecyclerView`是Android API 21引入的UI组件,用于替代ListView和GridView
【6月更文挑战第26天】`RecyclerView`是Android API 21引入的UI组件,用于替代ListView和GridView。它提供高效的数据视图复用,优化的布局管理,支持多种布局(如线性、网格),并解耦数据、适配器和视图。RecyclerView的灵活性、性能(如局部刷新和动画支持)和扩展性使其成为现代Android开发的首选,特别是在处理大规模数据集时。
40 2
|
3月前
|
jenkins 机器人 测试技术
jenkins接入钉钉api接口自动化测试报告自动发送
该教程介绍了如何在Jenkins上实现接口自动化测试的持续集成,并将可视化报告发送至钉钉工作群。首先,确保准备好了自动化脚本。接着配置Jenkins:安装Git插件,设置源代码管理(如Git)和触发器(定时或推送)。使用Post build task插件处理构建后的报告,读取Allure的prometheusData.txt文件以获取测试结果。最后,安装Ding Talk插件,配置钉钉机器人,通过 Dingtalkchatbot 库发送测试报告信息到钉钉群。整个流程包括Jenkins的定时构建、Git仓库的监听以及自动化报告发送到钉钉的通知。
49 1
|
4月前
|
Web App开发 JavaScript 测试技术
python自动化测试实战 —— WebDriver API的使用
python自动化测试实战 —— WebDriver API的使用
46 1
|
4月前
|
Web App开发 前端开发 Java
Selenium UI 自动化
Selenium UI 自动化
|
4月前
|
监控 数据挖掘 API
京东商品API接口:电商数据自动化的钥匙
京东商品API接口为电商领域带来了巨大的便利和潜力。通过本篇文章,读者应该能够了解如何使用京东商品API接口,并通过示例代码学习如何实际调用API获取商品数据。 随着技术的不断发展,京东商品API接口将继续为电商自动化、数据分析和市场研究提供支持,帮助商家和开发者在竞争激烈的市场中保持领先。我们鼓励读者继续探索和学习,充分利用京东商品API接口带来的机遇。
|
4月前
|
前端开发 测试技术 持续交付
【Flutter 前端技术开发专栏】Flutter 中的 UI 测试与自动化测试
【4月更文挑战第30天】本文探讨了 Flutter 应用中UI测试和自动化测试的重要性,包括保障质量、提高效率和增强开发信心。Flutter提供`flutter_test`库进行Widget测试,以及`flutter_driver`进行集成测试。UI测试涵盖界面布局、交互和状态变化的验证,最佳实践建议尽早引入测试、保持用例简洁,并结合手动测试。未来,随着Flutter技术发展,UI测试和自动化测试将更加完善,助力开发高质量应用。
116 0
【Flutter 前端技术开发专栏】Flutter 中的 UI 测试与自动化测试
|
4月前
|
XML JSON API
电商数据集成:利用API接口实现商品详情自动化获取
在电子商务的快速发展中,数据集成成为提升业务效率和增强市场竞争力的关键。API(应用程序编程接口)作为数据集成的核心工具,允许商家自动化获取商品详情,从而实现高效的商品管理和数据分析。本文将探讨如何利用API接口自动化获取商品详情,并分析其对电商业务的影响。

热门文章

最新文章

下一篇
云函数