use*_*498 1 java user-interface swing
我需要编写一个程序来通过它的 GUI 以编程方式控制 Java Swing 应用程序。
该程序需要能够将值添加到应用程序的文本字段中,然后点击“确定”按钮,就像人类使用该应用程序所做的那样。
我对 Swing 不熟悉,所以我不知道从哪里开始。我查看了一些 Java Swing GUI 测试工具,但它们似乎都需要将 Swing 应用程序作为工具的一部分启动,而在我的用例中,它必须能够在不同的进程中控制已经运行的 Swing 应用程序。
java awt 机器人类专门用于自动化 gui 交互。在这里看到一篇不错的介绍文章。
使用机器人类,您可以通过名称/id/位置/任何内容来定位各种 gui 元素,并以与用户生成事件相同的方式与它们交互。
关于将 ui 作为工具的一部分运行 - 当然这是最简单的解决方案,但您也可以使用attach API将代码注入到已经运行的 JVM 中。您可以编写一个 java 代理并将其从另一个 java 进程(您的自动化工具)附加到正在运行的 UI 应用程序中。这与调试器和分析器使用的机制相同。javadocs 中有一些示例代码
| 归档时间: | 
 | 
| 查看次数: | 1637 次 | 
| 最近记录: |