【发布时间】:2015-12-24 05:22:28
【问题描述】:
我需要测试一个网页,其中 jQuery/AngularJS 将一些数据添加到元素的属性中,在本例中为“值”,默认选择器不可见。我正在使用 Capybara 和 Poltergeist。我想验证元素值,但标准方式失败:
expect(find(:xpath, "//input[@type='text']").value).to eq('3')
或
find("//input[@type='text']/@value='3'")
元素看起来像这样(值出现在属性中):
<input type="text" ng-model="link.days_until_expiration" placeholder="Never" maxlength="4" ng-change="passPositiveNumbers(link);" class="ng-pristine ng-valid">
在 Chrome 控制台中,我可以选择它
$('input[type="text"]').data('value', '3')
但是Capybara中没有数据方法。
【问题讨论】:
标签: jquery angularjs capybara poltergeist