我研究了很多,并使用了各种论坛中提到的许多可能的解决方案,但没有一个对我有用。我正在尝试在CI / CD管道中运行此程序,尽管能够在本地运行量角器测试用例并能够启动浏览器,但在CI / CD管道构建中,以下是失败的细节
我在package.json中的脚本下使用以下postinstall
"postinstall": "npm uninstall -g webdriver-manager protractor && npm install -g webdriver-manager protractor && webdriver-manager update && cd ./node_modules/protractor && npm i webdriver-manager@latest",
"postinstall": "cd ./node_modules/protractor && npm i webdriver-manager@latest",
对于以下脚本命令,将引发以下错误 I / file_manager-创建文件夹D:\ a \ 1 \ s \ node_modules \ protractor \ node_modules \ webdriver-manager \ selenium I / config_source-curl -oD:\ a \ 1 \ s \ node_modules \ protractor \ node_modules \ webdriver-manager \ selenium \ chrome-response.xml https://chromedriver.storage.googleapis.com/ I /下载程序-curl -oD:\ a \ 1 \ s \ node_modules \ protractor \ node_modules \ webdriver-manager \ selenium / chromedriver_79.0.3945.36.zip https://chromedriver.storage.googleapis.com/79.0.3945.16/chromedriver_win32.zip 我/更新-chromedriver:解压缩chromedriver_79.0.3945.36.zip I /启动器-运行1个WebDriver实例 I / direct-直接使用ChromeDriver ... E /启动器-未创建会话:此版本的ChromeDriver仅支持Chrome版本79
当我使用下面的脚本命令时,我会得到76的版本问题
"postinstall": "webdriver-manager update"
I /更新-chromedriver:文件存在D:\ a \ 1 \ s \ node_modules \ protractor \ node_modules \ webdriver-manager \ selenium \ chromedriver_76.0.3809.12.zip 我/更新-chromedriver:解压缩chromedriver_76.0.3809.12.zip I /更新-chromedriver:chromedriver_76.0.3809.12.exe是最新的 I /启动器-运行1个WebDriver实例 I / direct-直接使用ChromeDriver ... E /启动器-未创建会话:此版本的ChromeDriver仅支持Chrome版本76 (驱动程序信息:chromedriver = 76.0.3809.12
下面是webdriver-manager下的config.json
{
"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/"
}
}
尝试了许多可能在管道构建中使用的命令,但是没有一个命令可以帮助我。任何人都可以提出可能的问题吗?
答案 0 :(得分:0)
自昨天下午将其从78更改为79以来,我一直遇到相同的问题。今天,当我通过ng e2e运行无头浏览器E2E测试时,我得到:[09:27:16] E / launcher -未创建会话:此版本的ChromeDriver仅支持Chrome版本79 (驱动程序信息:chromedriver = 79.0.3945。 16 (93fcc21110c10dbbd49bbff8f472335360e31d05-refs / branch-heads / 3945 @ {#262 }),platform = Windows NT 10.0.18362 x86_64)。我研究了要使用哪个版本的chromedriver,它说的是79.0.3945.36,所以我这样做了: npm install chromedriver update --versions.chrome = 79.0.3945。 36 与此: npm安装webdriver-manager更新。仍然没有运气。
有人可以帮助我将量角器版本更改为新版本吗?非常感谢,因为我们必须退出端到端的E2E测试,目前正在跳过这些测试。
我正在使用的当前浏览器是版本79.0.3945.88(正式版本)(64位)。
我在webdriver-manager下的config.json看起来和你一样。
我使用的量角器版本不同: 5.4.2 ,因为我也做了 npm install protractor @ latest --save-dev
答案 1 :(得分:0)
这是我在StackOverflow中的第一个答案。 在工作期间,在进行新更新后,我遇到了同样的问题。我尝试了@ptiiCarlos提到的相同操作,但是没有解决。不幸的是,所有其他答案都很老,但是我有一些观点可以帮助我解决问题。
webdriver-manager status
。
在我的情况下是 79.0.3945.36
webdriver-manager update --versions.chrome 78.0.3904.105
。在我的情况下:[03:34:20] I /状态-可用的chromedriver版本: 78.0.3904.105 [最新],79.0.3945.36
node node_modules/protractor/bin/webdriver-manager status
在我的情况下是 79.0.3945.36
node node_modules/protractor/bin/webdriver-manager update --versions.chrome 78.0.3904.105
。在我的情况下:[03:35:15] I /状态-可用的chromedriver版本: 78.0.3904.105 [最新],79.0.3945.36
您不需要降级Google Chrome。