【问题标题】:Protractor - How to store the value of browser.executeScript in variable?量角器 - 如何将 browser.executeScript 的值存储在变量中?
【发布时间】:2016-11-01 05:35:39
【问题描述】:

我正在尝试将 browser.executeScript 的值存储在我的 it 块中的局部变量中,但在它显示为 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();


        });

真的会感激有人能告诉我如何正确地做到这一点吗?

【问题讨论】:

    标签: javascript css angularjs testing protractor


    【解决方案1】:

    你需要有一个来自脚本的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);
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-22
      • 1970-01-01
      • 2019-10-11
      • 2013-01-31
      • 2021-02-18
      • 2021-12-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多