有什么方法可以针对chrome扩展程序运行webdriver.io硒测试吗?

时间:2018-08-14 12:56:08

标签: node.js selenium webdriver-io

我在想一些类似的事情

capabilities: [
    {
        maxInstances: 1,
        browser: "Chrome",
        name: "Chrome"
    },
    {
        maxInstances: 1,
        browser: "Chrome",
        options: "myIeExtension",
        name: "IE"
    }
]

名称位是可选的,但非常方便。

编辑: 目前我有

const fs = require('fs');
function encode(file) {
    const stream = fs.readFileSync(file);
    return Buffer.from(stream).toString('base64');
}

capabilities: [
{
  maxInstances: 1,
  browserName: 'chrome',
  chromeOptions: { extensions: [encode('path_to_my_crx_file/my_extension.crx')] },
}
],

可以,但是每次运行硒测试时,我都必须通过扩展名简介-输入电子邮件,密码,然后选择并启动。有什么办法可以让硒输入所有这些值作为测试的一部分?

1 个答案:

答案 0 :(得分:0)

因此,您可以按照上述步骤在ChromeOptions中指定chrome扩展程序的路径。但是,您必须每次都进行设置。

或者仅使用默认配置文件:

  capabilities: [
{
  maxInstances: 1,
  browserName: 'chrome',
  chromeOptions: { args: ['user-data-dir=/home/<username>/.config/google-chrome'] },
},

您不必在每次使用扩展程序时都设置扩展名,只需要做一次,然后就可以了。