用量角器测试输入类型的颜色

时间:2015-04-07 21:33:37

标签: angularjs testing selenium-webdriver webdriver protractor

我有一个使用操作系统颜色选择器的输入。有没有办法测试颜色选择器出现?

<input id="accent-color" type="color" ng-model="color">

我怀疑我知道这个问题的答案。

2 个答案:

答案 0 :(得分:1)

正确,您无法像真实用户那样操纵颜色选择器。

但是,您可以通过executeScript()设置它的值:

var elm = element(by.id("accent-color"));
browser.executeScript("arguments[0].setAttribute('value', arguments[1]);", elm, "#fe2235");

将设置颜色值,但不要指望使用新颜色值更改页面上看到的选取器颜色。

答案 1 :(得分:0)

在量角器中,您可以使用[]选择css的任何属性:

 element(by.css('[type="color"]'))

这有效地测试了颜色选择器,因为type="color"就是这样,但是如果它出现的话,它并没有真正测试。

有一种方法可以循环显示弹出的选项并选择一个,我很欣赏这有点含糊不清但是这个视频包含了你的答案:

https://www.youtube.com/watch?v=sHyp7vk7DeE&index=6&list=PL_noPv5wmuO-mnEq8Sf0h43QRk-Gk2Cvb