我试图将 browser.executeScript 的值存储在我的 it block 中的局部变量中,但我无法在所有显示 null 的情况下都这样做。
到目前为止我已经尝试了很多方法
browser.executeScript('$("#txtName").css("border-left-color");').then(function (color) {
console.log("This is color" + color);
});
还有这个
function returnColor()
{
var a = browser.executeScript('$("#txtName").css("border-left-color");');
return a;
}
function getColorCode()
{
var a = returnColor().then(function(list){
console.log("Output is ***************" + list);
return list;
});
return a;
}
我在我的规范中使用它作为
iit('', function() {
browser.executeScript('$("#txtName").css("border-left-color");').then(function (color) {
console.log("This is color" + color);
});
returnColor();
});
真的很感激有人能告诉我如何正确地做到这一点吗?
最佳答案
您需要从脚本中得到一个返回
:
function returnColor()
{
return browser.executeScript('return $("#txtName").css("border-left-color");');
}
请注意,您也可以通过 getCssValue()
解决同样的问题。 :
var elm = element(by.id("txtName"));
elm.getCssValue("border-left-color").then(function (color) {
console.log(color);
});
关于javascript - Protractor - 如何将 browser.executeScript 的值存储在变量中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38100810/