在 Selenium IDE 中使用 sendKeys 丢失了 Vaadin 字段的值

Vaadin fields' values are lost using sendKeys in Selenium IDE

我们想自动测试 vaadin 生成的 Web java 应用程序。 我们正在使用 Selenium IDE - 作为第一步,可能是最后一步。我们不想转向硒化物,但是,只需简单地使用硒 IDE。 我们通过 sendKeys:

填写所有 vaadin 字段

click | id=field1

sendKeys | id=field1 | Fieldcontent

sendKeys | id=field1 | ${KEY_TAB}

click | id=field2

sendKeys | id=field2 | Fieldcontent

sendKeys | id=field2 | ${KEY_TAB}

click | id=save

按下保存按钮后,我们收到一条错误消息,指出字段 1 和字段 2 为空。 只是 vaadin java 应用程序看不到由 sendKey 或 type Selenium 命令发送的值。但很奇怪,因为它们在那里。 如果我们手动执行相同操作,FF firebug 会显示网络事件: 在 field1 中输入值,按 Tab 键,填写 field2 并按保存按钮。 如果我们在测试自动化失败后手动单击进入 field1 和 field2,保存工作。 似乎手动点击 and/or selenium click 命令也不同,手动按下 Tab 按钮并通过 sendKeys ${KEY_TAB}

发送 Tab

如何通过 selenium 填充 vaadin 字段以便调用必要的事件并保存按钮仅在 Selenium 中保存字段内容IDE?

使用 type 命令代替 sendKeys

你也可以去掉TAB键被按下的步骤(当然除非它也是你测试的一部分)。 Selenium IDE 自动将字符输入字段,甚至无需告诉程序关注目标输入字段。