Protractor 并不意味着对页面进行非用户化的更改,因此如果您希望它使用 Protractor 更改页面的背景颜色,您可能应该重新考虑。但是...如果您决定使用它,您可以使用browser.executeScript(statement)
,并且“语句”将被评估为 JavaScript,就好像您在控制台中运行它一样。background-color
选择有问题的元素并以这种方式为其赋予 CSS 属性将相当简单。
如果你的意思是你想测试一个元素的背景颜色,你可以使用element(selector).getAttribute('style').then(function(style) {});
并做一些 JS 字符串操作魔法来得到你正在寻找的东西。看起来像这样:
var bgIndex = style.indexOf('#', style.indexOf('background-color:')) + 1;
var bgColor = style.substr(bgIndex, 6);
以上内容有点过于具体(例如,如果您使用值,它将不起作用rgb()
),但您应该了解总体思路。
@jsmarkus 说你也可以使用getCssValue('background-color')
. 这应该可以为您节省一些字符串操作的麻烦。