17

我是 Protractor 的新手。尽管缺少文档,但我想我理解了基本原理,但我找不到解决这个问题的方法。

鉴于此代码:

ptor.findElement(protractor.By.input('canvas.description')).sendKeys('My description');
var description = ptor.findElement(protractor.By.input('canvas.description'));
expect(description.getText()).toEqual('My description');

我可以看到输入获取了它正在插入的文本,并且模型使用相同的值更新,但是测试失败'导致 description.getText() 返回''(空字符串)。

是否有不同的方法来捕获输入中的值?

提前致谢。

4

1 回答 1

47

显然 Selenium WebDriver 有一个怪癖。见这里。

尝试:

description.getAttribute('value');

请注意,这会getAttribute返回一个承诺,因此如果您需要以某种方式使用此值,则必须使用一个then子句:

description.getAttribute('value').then(function(value){
    //Do something with value
});
于 2013-10-23T14:23:56.787 回答