3

我在 Selenium IDE 上用sendKeys命令编写测试很好。但是当我更改为 PHPUnit Selenium 时,我得到了一个错误Method sendKeys not defined,所以我想知道是PHPUnit-Selenium不支持还是我需要添加一个方法?如果答案是我需要添加senKeys方法,那么让我知道如何添加senKeys方法。

4

1 回答 1

12

我有一段时间也想不通这个......诀窍是它不被称为 sendKeys 并且你不要在 PHPUnit 中使用 {ENTER} 和 Selenium。这些不是您要寻找的功能!

相反,单击您要输入的元素,然后使用键功能,如下所示:

$this->byXpath('//*[@id="theOneToTypeIn"]')->click();
$this->keys('some keys to type'.Keys::ENTER);

确保在页面顶部也包含 Keys 类:

use PHPUnit_Extensions_Selenium2TestCase_Keys as Keys;

可以在此处找到支持的密钥:https ://code.google.com/p/selenium/wiki/JsonWireProtocol#/session/:sessionId/element/:id/value

我读到支持的 SendKeys 与 JSON 线框中的相同,所以我想这些常量的名称与它们在该链接中的名称相同......但后来我也想象所有的函数名称都是相同的我们到了。

于 2013-12-13T22:10:37.740 回答