使用量角器测试链接颜色
Using protractor to test link colours
如何使用量角器测试悬停时链接的颜色?
我想模拟鼠标悬停在链接上,链接从白色变为蓝色,然后我想测试悬停时的颜色为蓝色。
我当前用于测试的代码。
it('should redirect to the home page', function(){
element(by.css('ul.first_menu > li > a'));
expect('ul.first_menu. > li > a'.getCssValue("color")).toEqual("rgba(11, 51, 60, 1)");
browser.actions().mouseMove('ul.first_menu. > li > a').perform();
browser.wait(waitForCssValue('ul.first_menu. > li > a', "color", "rgba(42, 100, 150, 1)"), 1000);
browser.wait(waitForCssValue('ul.first_menu. > li > a', "text-decoration", "underline"), 1000);
waitForCssValue = function (elementFinder, cssProperty, cssValue) {
return function () {
return elementFinder.getCssValue(cssProperty).then(function(actualValue) {
return actualValue === cssValue;
});
};
};
});
我已经完全按照你的要求做了。
其思想是使用getCssValue()
并获得color
和text-decoration
的属性。然后,将带有mouseMove()
的链接悬停,等待CSS值更改:
var elm = element(by.css('ul.first_menu > li > a'));
function waitForCssValue (elementFinder, cssProperty, cssValue) {
return function () {
return elementFinder.getCssValue(cssProperty).then(function(actualValue) {
return actualValue === cssValue;
});
};
};
expect(elm.getCssValue("color")).toEqual("rgba(11, 51, 60, 1)");
expect(elm.getCssValue("text-decoration")).toEqual("none");
browser.actions().mouseMove(elm).perform();
browser.wait(waitForCssValue(elm, "color", "rgba(42, 100, 150, 1)"), 1000);
browser.wait(waitForCssValue(elm, "text-decoration", "underline"), 1000);
相关文章:
- 使用量角器测试链接颜色
- 更改Jquery UL li筛选器中的链接颜色
- Jquery切换链接颜色
- 如何在页面刷新时保持选定/活动的HTML链接颜色
- 更改文本链接颜色 JavaScript 或 CSS
- Javascript OnClick 更改各种元素链接颜色
- 使用CSS和JavaScript点击,链接颜色在被点击和激活时会发生变化,直到我点击其他链接
- 在javascript而不是CSS(悬停)中更改链接颜色---在jsfiddle而不是浏览器中工作
- 如何在 CSS 中将颜色设置为用户的链接颜色
- JS点击功能不再工作以更改链接颜色
- 是否可以使用Javascript在页面刷新时随机生成预先确定的链接颜色和悬停颜色
- 滚动时更改scrollspy链接颜色
- Javascript,当鼠标悬停在链接上时,只需在我单击按钮后更改链接颜色
- 仅更改悬停javascript上的链接颜色
- 更改所有文档链接颜色Javascript
- 当鼠标悬停在父列表项上时改变链接颜色时的奇怪行为
- 使用同一个 css 文档的不同 html 页面上的不同链接颜色
- 在socialstatistics小部件上更改链接颜色
- 删除pdf中的链接颜色和下划线
- Javascript更改链接颜色错误