我正在测试我的SWING Gui。
我通过使用FEST框架来做到这一点。

我有以下输入:

window.textBox("txtDatabaseConnectionString").enterText("jdbc:oracle:thin:10.254.202.27:1521:db");


实际上,它开始使用以下值填充文本框:


  jdbc.oracle.thin&a


而且比测试崩溃...

我得到以下异常输出


  java.lang.IllegalArgumentException:无效的键代码“ 46”位于
  org.fest.swing.core.RobotEventGenerator.pressKey(RobotEventGenerator.java:116)
    在org.fest.swing.core.BasicRobot.doPressKey(BasicRobot.java:633)处
  org.fest.swing.core.BasicRobot.keyPressAndRelease(BasicRobot.java:618)
    在org.fest.swing.core.BasicRobot.type(BasicRobot.java:589)处
  org.fest.swing.core.BasicRobot.enterText(BasicRobot.java:572)在
  org.fest.swing.driver.JTextComponentDriver.enterText(JTextComponentDriver.java:126)
    在
  org.fest.swing.fixture.JTextComponentFixture.enterText(JTextComponentFixture.java:208)
    在
  gui.GuiTest.shouldCopyTextInLabelWhenClickingButton(GuiTest.java:44)

最佳答案

FEST在键盘布局方面存在很多问题。如果您的语言环境不是en_gb/en_us,则可能会遇到此类问题。键盘输入取决于您的键盘布局,在许多国家和操作系统中,键盘布局是不同的。我注意到在您的示例中,它还将:更改为.。在源here中,只有gb / en / de映射。要解决该问题,您可以添加自己的键盘映射,如本文所述:http://alexruiz.developerblogs.com/?p=1102

FEST看起来像是一个废弃的项目,我不确定这是否是最新消息。

09-05 01:37