我正在使用带有 Webdriver IO 的 centos 节点在 Jenkins 中的 Web 应用程序上运行 E2E 测试。
Chrome:google-chrome-stable-96.0.4664.110-1.x86_64.rpm
Chrome 驱动程序:
sh 'sudo yum info google-chrome-stable | grep Version > chromeOutFile'
def CHROME_VERSION = readFile('chromeOutFile')
def Version = CHROME_VERSION.split('Version :')
def VersionNumber = Version[1].trim()
sh "./src/main/web/node_modules/protractor/bin/webdriver-manager update --versions.chrome=${VersionNumber}"
我想更新此版本以使用最新版本的 Chrome 和相应的 Chrome 驱动程序。
Webdriver IO 配置:
services: [['chromedriver', {
chromedriverCustomPath: '../node_modules/webdriver-manager/selenium/chromedriver_96.0.4664.110'
}]],
问题:当我尝试使用更新的版本时,即使它是 chromedriver_97.0.4692.99,我的 Web 应用程序也不再在 Jenkins 中启动。当我尝试访问该网址时,屏幕截图仅显示空白屏幕。我不确定应用程序是否正在加载。
为什么它只适用于 96 而不适用于其他?
我尝试使用 https://chromedriver.storage.googleapis.com/LATEST_RELEASE_97.0.4692 将 Chrome 版本与适当版本的 Chrome 驱动程序映射,但这对我来说仍然不起作用。
运行测试:
cd e2e && wdio run wdio.ci.conf.ts --suite access --logLevel=info
+ lsb_release -d
Description: CentOS Linux release 7.9.2009 (Core)
您是否尝试过检查内存限制?我在自动化测试中遇到了类似的问题,并且必须将内存限制更改为 1) 限制 chrome 的内存或 2) 如果您在同一设备上进行测试,请提前从我的网络服务器预先分配一定量的内存。