我正在尝试将browser.executeScript的值存储在我的块中的局部变量中,但在所有情况下我都无法将其显示为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();
});
真的会告诉我有人可以告诉我如何正确地做到这一点吗?
答案 0 :(得分:9)
您需要从脚本中获得return
:
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);
});