对 EggPlant、跨平台和应用程序自动化测试工具有什么个人经验吗?

软件测试 自动化测试 茄子
2022-02-07 13:42:16

作为一个跨平台、跨应用的自动化测试系统 EggPlant 看起来好得令人难以置信。有没有人使用它实施过大型自动化测试项目,你的经验是什么?

4个回答

一两年前,我雇主现有的自动化测试系统的许可期即将结束,我的任务是评估 EggPlant 作为可能的替代品。我花了大约一个月的时间来记录测试,编写测试脚本,并试图找出 EggPlant 的缺陷。

在大多数情况下,EggPlant 可以做我们需要做的任何事情。正如其他人所说,它是基于图像识别的,所以当 AUT 的界面发生变化时,测试往往会中断,但是因为它允许图像屏蔽和模糊图像识别,并且(更重要的是)可以在给定字体的情况下读取文本,所以可以编写对变化具有非零容忍度的测试,与其他一些基于图像识别的自动化测试系统相比,可以用相对较少的努力进行更新。

也就是说,当我评估茄子时,它确实有两个重大缺陷。首先是它是一个非常基于 mac 的软件。当然,这本身不是问题,但我正在研究的是该工具的 Windows 版本,它的大部分功能和界面都是为 Macintosh 操作系统设计的。我说的也不只是在运行 AUT 的机器上:EggPlant 用户界面本身使用 Mac UI 约定,这与 Windows 明显不同。它往往有点令人困惑。

EggPlant 的第二个重大缺陷是它充满了致命的虫子。公平地说,当我们向 TestPlant 支持人员提到这些错误时,它们很快就得到了修复,但是出现惊人的错误的绝对频率使得在不经常分心的情况下使用该工具是不可能的。

(我应该强调一下,这两个缺陷现在可能已经修复了。EggPlant 的 Windows 端口在我查看时是全新的,系统的许多错误和怪癖可能是初期问题。)

最后,我们最终没有使用 EggPlant,但那是因为我上面描述的大多数特定于 Windows 的缺陷。我想如果我在 Mac 上运行该工具,我会对它的功能有一个更积极的印象。

不过我没用过。。。

这个工具的主要缺点是它是使用图像识别驱动的,我认为这是一个主要缺点。我可以保证您的应用程序会发生变化,并且您需要返回并重新捕获大部分图像以使您的测试套件再次运行。当您有 300 个测试时,这可能是可以接受的,但假设您有 10000 多个测试,您的套件将需要数周时间才能修复,不久之后,跟上不断变化的 UI 的努力将不值得。

更好的方法是选择最适合您尝试测试的应用程序需求的工具,而不是应用适合所有应用程序的一个解决方案。

任何基于图像比较的 AGT 系统本质上都是脆弱的。如果您的 AUT 是通过浏览器提供的,我强烈建议您采用 Selenium 和/或 Watir。它拥有最好的社区支持、跨浏览器兼容性,并以大多数主要语言实现。

文本识别工作正常..我觉得这个工具与图像识别工具相比似乎更强大。这个工具不适合急剧变化的平台,但如果 UI 或菜单被冻结,那么对于中长期项目茄子应该满足自动化工具的大部分要求