gpt4 book ai didi

java - NetBeans 平台应用程序 : How to create test environment for first automated end-to-end test through GUI?

转载 作者:行者123 更新时间:2023-12-02 08:35:27 24 4
gpt4 key购买 nike

如何为 Java 上的 NetBeans 平台应用程序编写第一个端到端自动化测试(不仅仅是捕获和重放),假设单击主菜单 -> 文件 -> 退出菜单来运行应用程序并进行测试项目会关闭吗?

给出:已安装jdk1.6.0_17和apache-maven-2.2.1

然后:

mvn archetype:generate -DarchetypeGroupId=org.codehaus.mojo.archetypes -DarchetypeArtifactId=netbeans-platform-app-archetype -DarchetypeVersion=1.1 -DgroupId=stackoverflow.com -DartifactId=netbeans-app -Dversion=1.0-SNAPSHOT

然后:

mvn install
cd netbeans-app\application\target\foo\bin\
foo.exe

并查看默认 GUI 应用程序是否成功运行。

您建议使用哪种开源 GUI 测试框架来完成此任务?Abbot/Costello、Jelly/Jemmy、UISpec4J、Marathon、FEST-Swing 或 WindowLicker?

最佳答案

我会说:

Jemmy 可能已退出,因为它作为 Eclipse 插件效果最好。(不确定 Jelly 是否如此)

如果你有自定义组件,那么 Abbot/Costello 就出局了,我发现它对这些组件的 react 是不可预测的。使用自定义组件,它的工作方式就像一个魅力。

如果从 Netbeans IDE 中运行测试对您来说非常重要,那么 Marathon 也不适用,因为您需要从命令行(或其独立应用程序)进行测试。不过,在我看来,它对自定义组件有最好的支持。

那就真的只剩下 FEST 了。 FEST 非常好地集成到 Netbeans 运行中,因为它可以以与 JUnit 相同的方式运行,其测试结果直接显示在 Netbean IDE 的“测试结果”面板中。它配备了一个非常简洁的插件,可以轻松设置 FEST 测试:Geertjan 的 NetBeans plug-in for FEST-Swing 。 FEST的主要缺点是它只能重播,没有记录,并且必须手动编写测试用例。

几个月前,我个人在为自动化测试框架选择测试工具时也做出了类似的决定 - 我选择了 Marathon,因为我的目标应用程序中的自定义组件测试至关重要。做出该决定时还考虑了其​​他因素:能够将测试集成到持续集成系统中,例如巡航控制;编程能力有限的测试人员编写/记录测试脚本;在我们的案例中也很重要。

就您的目的而言,我想说,对于您的具体问题,根据目前已知的信息,FEST 似乎是最合乎逻辑的选择。

但是,我建议您花一天时间研究每个测试工具,尝试将每个工具连接起来并记录其优缺点。最后,您可能会发现您比我更好地回答了自己的问题,因为您可能会发现比您自己现在意识到的更多的需求 - 我知道我做到了!

HTH

<小时/>

免责声明:我没有使用 UISpec4J、Jelly 和 WindowLicker 的经验,所以我的答案可能不完整。

<小时/>

编辑:补充一下,FEST 可以在退出时测试应用程序。最近解决了这个问题。 Marathon 不能做同样的事情 - 这会影响我对测试用例的测试,其中涉及测试应用程序的关闭。
据我所知,Abbot/Costello也受到同样问题的影响(但我没有及时了解这一点),对于其他测试工具,我还没有尝试测试应用程序的退出。

关于java - NetBeans 平台应用程序 : How to create test environment for first automated end-to-end test through GUI?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1958104/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com