我是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()返回''(空字符串)。
是否有不同的方法来捕获输入中的值?
提前致谢。
答案 0 :(得分:45)
显然,Selenium WebDriver存在一个怪癖。见here.
尝试:
description.getAttribute('value');
请注意,getAttribute
会返回一个承诺,因此如果您需要使用此值,您必须使用then
子句:
description.getAttribute('value').then(function(value){
//Do something with value
});