【问题标题】:Catch Java generated JFrame pop-up捕捉 Java 生成的 JFrame 弹出窗口
【发布时间】:2011-05-19 11:45:50
【问题描述】:

我会简短而具体。我正在黑盒测试Java(IDE:Eclipse)中的命令行实用程序,并且在某些时候它会生成一个JFrame弹出窗口,要求输入密码。由于我正在进行一系列自动化测试,因此必须自动输入密码。弹窗上没有按钮,所以密码+回车键就足够了。

我是否应该制作某种监听器或事件处理程序,等待弹出窗口,抓住它并输入密码?也许是某种进程监听器?

任何帮助将不胜感激!

【问题讨论】:

    标签: java testing junit listener jframe


    【解决方案1】:

    为您的输入字段和按钮命名 (Component.setName()) 并使用 FEST 框架来机器人控制您的 UI:http://fest.easytesting.org/

    但是:对于这样的情况,能够通过命令行(绕过 gui)或从配置文件中读取密码和用户名可能会更有趣。 (无论如何,两者都可能会在以后添加到实用程序中)

    【讨论】:

    • 由于我没有生成输入字段,我无法设置任何内容(我正在编写 JUnit 测试)。实际上可以通过命令行输入密码,但是当我尝试通过 Eclipse 运行该实用程序时,我会收到“无控制台”错误。据我所知,这是因为控制台类和IDE集成的长期问题。
    • 或许您可以要求开发人员为输入字段命名为“setName”?如果未设置输入字段的名称,您也可以使用我上面链接的框架。它基本上是 java.awt.Robot 的扩展,允许您等待 Frame 开启,然后您可以检查 UI 元素树并操作它们(例如输入文本或单击按钮)
    猜你喜欢
    • 1970-01-01
    • 2011-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多