您是否自动化 GUI 测试以及您使用哪种工具?

软件测试 自动化测试
2022-01-14 22:35:29

您知道什么样的 GUI 自动化工具或方法?

GUI测试是指通过测试被测应用程序的外观:对象的大小、形式、颜色等。

我知道基于屏幕截图比较的 GUI 测试。如果您知道并告诉我有关工具的信息,请告诉我不同​​的方法。

恕我直言,GUI 自动化测试是开销,但我们的高管仍然认为 GUI 自动化测试是必须的。所以,请分享您的经验。

4个回答

如果是我正在工作的响应式 Web 应用程序。我使用盖伦框架Galen 有自己的语法来定义 Web 对象的属性;宽度、高度、位置、对齐方式、文本、颜色等等。它的简化和人类可读的语法适用于我的非编程同事。它与 Selenium GRID 配合得很好,我还使用 Jenkins 让它在一夜之间运行。

在我看来和我目前的工作中,需要 GUI 自动化测试。但是在实施之初,测试团队应该专注于将自动化 GUI 测试实施到应用程序稳定的回归测试。

因为一个模块的实现可能比手动测试花费更多的时间,如果你在不稳定的模块上构建它并且需要修改测试脚本,那会很痛苦。

这是我的经验。我也是 GUI 自动化测试的新手,并继续进行下去。谢谢你让我分享我的。

在我担任测试自动化工程师的最后四年中,我为 Web 应用程序和移动应用程序开发了测试自动化解决方案。对于这两种应用程序类型,我们总是决定自动化功能测试。

我的观点是,没有任何自动化工具足以很好地检查 GUI。您必须检查很多事情:颜色、元素的位置、单击元素的行为、不同屏幕尺寸的行为等等。作为手动测试人员,您可以更好地检查这一点。

无论如何,当其他人决定开发自动化 GUI 测试时,您必须这样做。对于移动应用程序, TestPlant 的eggPlant Mobile可能是正确的解决方案。该工具适用于图像识别。我通过测试自动化工具比较对其进行了测试,它适用于 GUI 测试。eggPlant 是一个商业工具,将使用自己的语言 SenseTalk 开发自动化测试用例。

我正在为本地桌面应用程序进行 GUI 测试自动化,我使用基于 Win32 API 的pywinauto Python 库。代码看起来非常pythonic和人类可读。

但也有一些陷阱:pywinauto 仅支持 32 位并且不经常更新(最新的主要更新是在 2006 年)。我不得不将它移植到64-bit,但现在它满足了我们的所有要求。我们当前版本的 pywinauto适用于Python 3.x。我们计划实施 UI 自动化 API 扩展以支持 WPF 和许多其他应用程序。

pywinauto 可以使用 Pillow 或 PIL 包捕获任何控件的屏幕截图。所以我们对一些包含高级图形的特定自定义控件使用图像比较。当然,如果图形有一些可接受的变化,我们会在黄金图像存储大小和手动更新时间之间保持一些平衡。

我们使用Ranorex已经有一段时间了,我们对这个工具非常满意。它支持网络、桌面和移动应用程序,因此我们不需要使用三个或更多不同的工具进行测试。

可以重用测试模块也很好。