由于Chrome驱动程序导致使用量角器的端到端测试失败

时间:2019-02-19 14:46:09

标签: angular jenkins protractor

3天前,我们的端到端量角器测试使用的是版本2.45的chrome。从昨天开始,量角器使用的是2.46版本,我们的测试失败了:

  

[INFO] [21:16:41] I /下载程序-curl -o / var / lib / jenkins / workspace / risk-score-frontend / node_modules / protractor / node_modules / webdriver-manager / selenium / chromedriver_2.46 .zip https://chromedriver.storage.googleapis.com/2.46/chromedriver_linux64.zip   [INFO] [21:16:41]我/更新-chromedriver:解压缩chromedriver_2.46.zip   [INFO] [21:16:41]我/更新-chromedriver:将/ var / lib / jenkins / workspace / risk-score-frontend / node_modules / protractor / node_modules / webdriver-manager / selenium / chromedriver_2的权限设置为0755。 46   [INFO] [21:16:42] I /启动器-运行1个WebDriver实例   [INFO] [21:16:42] I / direct-直接使用ChromeDriver ...   [INFO] [21:16:42] E /启动器-未创建会话:Chrome版本必须在71到75之间   [INFO](驱动程序信息:chromedriver = 2.46.628388(4a34a70827ac54148e092aafb70504c4ea7ae926),平台= Linux 4.4.0-1013-aws x86_64)   [INFO] [21:16:42] E /启动器-SessionNotCreatedError:未创建会话:Chrome版本必须在71到75之间

托管jenkins的计算机是chrome版本为70.0.3538.110-0ubuntu0.16.04.1的ubuntu

在找到升级chrome的方法之前,如何强迫量角器使用2.45版?

谢谢!

3 个答案:

答案 0 :(得分:4)

自从使用ng e2e启动测试以来。我最终用以下内容修改了package.json:

...
"pree2e": "webdriver-manager update --standalone false --gecko false --versions.chrome 2.44", 
"e2e": "ng e2e --webdriver-update=false",
...

答案 1 :(得分:3)

运行webdriver-manager时,可以选择使用--versions。如果运行webdriver-manager status,则将提供所有可用的版本。我假设它将说您拥有chromedriver版本2.45,因为那是您先前运行的版本。要使用2.45版运行webriver-manager,您将执行webdriver-manager --versions.chrome 2.45 start

答案 2 :(得分:1)

安装Chrome

wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list'
sudo apt-get update 
sudo apt-get install google-chrome-stable

更新Chrome

sudo apt-get --only-upgrade install google-chrome-stable
来源:https://gist.github.com/mrtns/78d15e3263b2f6a231fe