提问人:c-an 提问时间:7/25/2019 最后编辑:James Wilsonc-an 更新时间:4/19/2022 访问量:9496
UI 测试和 E2E 测试有什么区别?每种方法有什么好处?
What's the difference between a UI test and an E2E Test? And What's the benefits of each?
问:
我们的团队正在考虑根据用户场景开始测试。因此,我们正在选择一个 E2E 框架。
搜索以下线索:UI test
所以,我发现这个
它说
UI测试:用户界面测试。换句话说,您必须确保屏幕上的所有按钮、字段、标签和其他元素都按照规范中的假设工作。
GUI测试:图形用户界面。您必须确保屏幕上的所有元素都按照规范中提到的工作,并且颜色、字体、元素大小和其他类似的东西都与设计相匹配。
功能测试:根据规范要求,对组件或系统的功能/功能进行一般测试的产品质量保证过程。
E2E测试:它需要识别系统依赖关系,并确保正确的信息通过多个组件和系统传递。
我不明白 & 之间的区别。UI Testing
E2E Testing
我在 Android Studio 中编写了 UI 测试代码。我需要为每一次点击和查看等编写代码。我觉得我们为什么需要这个?我宁愿直接用手指动态地进行测试。
答:
让我们先看看 E2E(端到端)测试和 UI 测试之间的区别:
- 端到端测试是检查整个系统/产品的行为 以部署方式正确使用。
- UI 测试,确保 UI 正常工作。
从本质上讲,UI 测试侧重于产品的 UI 组件。使用模拟后端进行此测试是完全合适的,以避免需要运行整个系统来检查 UI。
UI 测试和 E2E 测试之间存在一定程度的重叠。也就是说,如果您在 UI 测试中测试表单,我还希望在 E2E 场景中测试该表单。主要区别在于覆盖范围,E2E 测试将尝试涵盖可能是该表单的一种用途的场景。其中,UI 测试将涵盖用户可以对表单执行的所有操作,包括输入错误数据。
E2E 测试的问题之一是,当测试失败时,您需要花一些时间找出导致失败的组件。通过对每个组件进行测试(包括 UI 测试),其中一个组件的测试中应该会出现相应的失败。
想象一下,您的 E2E 测试失败,因为登录按钮已从 UI 中消失。您的 E2E 测试将显示用户无法登录。这是因为 UI、API、凭据存储(例如数据库)、使用 SSO 时与外部服务的连接(例如 LDAP)吗?在查看 UI 测试时,它还会说用户无法登录,但现在您知道这是 UI 问题。
I wrote UI Test Code in Android Studio. And I need to write a code for each and every click and view, etc. I feel why do we need this? I'd rather test with my finger directly and dynamically.
与所有测试一样,每种类型的测试的深度很大程度上取决于您的需求。在许多情况下,您描述的手动测试是完全足够的,通常是因为系统不是安全关键型的,并且解决问题的成本很低。但是,如果解决问题的成本很高,或者系统对安全至关重要,您可能希望投资为每次点击或查看编写测试可能很有用。
如果您希望我扩展任何观点,请发表评论。
评论