0

我已经弄清楚如何使用以下内容运行一个 chrome 扩展

{
  "src_folders" : ["test"],
  "webdriver" : {
    "start_process": true,
    "server_path": "node_modules/.bin/chromedriver",
    "cli_args": ["--verbose"],
    "port": 9515
  },

  "test_settings" : {
    "default" : {
      "desiredCapabilities": {
        "browserName": "chrome",
        "chromeOptions" : {
          "args": [
            "--load-extension=/pathToFirstExtension",
          ]
        }
      }
    }
  }
}

但是,运行两个扩展程序不起作用我尝试了以下方法

  "args": [
            "--load-extension=/pathToFirstExtension, /pathToSecondExtension",
          ]

"args": [
            "--load-extension=/pathToFirstExtension", 
            "--load-extension=/pathToSecondExtension",
        ]

"args": [
            "--load-extension=/pathToFirstExtension /pathToSecondExtension",
        ]

还有base64编码的字符串逗号分隔在这样的列表中

chromeOptions: {
          extensions: [
            keywords.base64,
            avgPrice.base64
          ]
        }

我在单个 js 文件中使用 module.exports,其中 base64 编码的字符串位于具有 base64 键的对象中

你如何为夜间测试加载多个 chrome 扩展

4

1 回答 1

0

Cuplrit 是逗号分隔的字符串之间的空格

万一有人觉得这很有用 - 这现在对我有用

const chromedriver = require('chromedriver');

module.exports = {
  src_folders : ["test"],
  test_settings: {
    default: {
      webdriver: {
        start_process: true,
        server_path: chromedriver.path,
        port: 4444,
        cli_args: ['--port=4444']
      },
      desiredCapabilities: {
        browserName: 'chrome',
        javascriptEnabled: true,
        acceptSslCerts: true,
        chromeOptions: {
          args: [
            "--load-extension=/pathToExtensionOne,/pathToExtensionTwo",
            "window-position=2560,0",
            "window-size=400,300"
          ]
        }
      }
    },
    chrome: {
      webdriver: {
        server_path: chromedriver.path
      },
      desiredCapabilities: {
        browserName: 'chrome',
        javascriptEnabled: true,
        acceptSslCerts: true,
        chromeOptions: {
          args: []
        }
      }
    }
  }
};

我还可以设置窗口大小/位置。

FWIW,我使用的是 nightwatch.conf.js 而不是 nightwatch.json

在我的 package.json 中

  "scripts": {
    "nightwatch": "nightwatch -c ./nightwatch.conf.js"
  }

要运行它,请在终端中执行以下命令

npm run nightwatch
于 2019-04-27T23:26:35.100 回答