如何通过我将放入存储库中的特定 webdriver 而不是量角器自动生成的 webdriver 运行自动测试?

How to run auto-tests via specific webdriver that I will put in repo instead of webdriver that generated automatically by protractor?

提问人:Tania 提问时间:10/7/2023 更新时间:10/7/2023 访问量:26

问:

我正在使用带有node.js的量角器测试框架 将这些配置放在protractor_config.js文件中

capabilities: {
        shardTestFiles: yargs.instances > 1,
        maxInstances: yargs.instances || 1,
        browserName: 'chrome',
        chromeOptions: {
            args: ['--no-sandbox', '--window-size=1920,1080']
        },
    },
    disableChecks: true,
    directConnect: true,

另外,我的Chrome版本是117.0.5938.149 因此,当我在控制台中输入“npm test”时 它返回一个错误:“未创建会话:此版本的 ChromeDriver 仅支持 Chrome 版本 114”

因为 webdriver 是从 https://chromedriver.storage.googleapis.com/ 链接自动生成

所以我的问题是:我可以在哪里以及如何指定在 Macos 上通过我自己的 chromedriver 运行我的测试,而不是由量角器生成并位于 node_modules/protractor/node_modules/webdriver-manager/selenium 文件夹中

这是在WebDriver-Manager中配置config.js文件:

{
  "webdriverVersions": {
    "selenium": "2.53.1",
    "chromedriver": "2.27",
    "maxChromedriver": "77",
    "geckodriver": "v0.13.0",
    "iedriver": "2.53.1",
    "androidsdk": "24.4.1",
    "appium": "1.6.5"
  },
  "cdnUrls": {
    "selenium": "https://selenium-release.storage.googleapis.com/",
    "chromedriver": "https://chromedriver.storage.googleapis.com/",
    "geckodriver": "https://github.com/mozilla/geckodriver/releases/download/",
    "iedriver": "https://selenium-release.storage.googleapis.com/",
    "androidsdk": "http://dl.google.com/android/"
  }
} 

和package.json脚本:

"scripts": {
    "format": "gulp format",
    "format-enforce": "gulp format:enforce",
    "gulp": "gulp",
    "jasmine": "jasmine",
    "posttest-e2e": "node ./bin/webdriver-manager shutdown",
    "prepublish": "npm run format-enforce && tsc && gulp copy",
    "pretest": "tsc && gulp copy",
    "pretest-e2e": "npm run pretest && npm run pretest-e2e:update && npm run pretest-e2e:start",
    "pretest-e2e:start": "node ./bin/webdriver-manager start --detach --seleniumPort 4444 --quiet",
    "pretest-e2e:update": "node ./bin/webdriver-manager update",
    "test": "npm run test-unit && npm run test-e2e",
    "test-e2e": "jasmine JASMINE_CONFIG_PATH=e2e_spec/support/headless.json",
    "test-unit": "jasmine",
    "tsc": "tsc"
  },

我无法通过命令将其更新到 117 版本:webdriver-manager update --versions.chrome 117.0.5938.149 因为这个版本在 https://chromedriver.storage.googleapis.com/ 中不存在

node:.js selenium-webdriver 自动测试 webdriver-manager

评论


答: 暂无答案