内容提要
Heroku推出了新的Chrome for Testing构建包,解决了自动化浏览器测试中Chrome与Chromedriver版本不匹配的问题,简化了测试流程,确保应用的可靠性,并支持最新的Chrome版本。
延伸解读
版本不匹配的根源与解决思路
文章指出,自动化浏览器测试常因Chrome与Chromedriver版本不匹配而失败,错误提示如“This version of ChromeDriver only supports Chrome version N”。由于Chrome是常青浏览器,会持续自动更新,固定版本号的做法很快会过时。Heroku推出的Chrome for Testing构建包正是为了解决这一循环问题,它依赖于Chrome开发团队对版本对齐问题的改进,从而在自动化测试环境中保持两者版本一致。
安装与配置的注意事项
使用新构建包时,需在Heroku Elements Marketplace中安装,并确保将其添加为第一个构建包,命令为“heroku buildpacks:add -i 1 heroku-community/chrome-for-testing”。如果应用已使用Chrome,必须先移除现有的Chrome和Chromedriver构建包,以避免冲突。默认情况下,构建包会下载最新的Stable版本,但用户可通过设置GOOGLE_CHROME_CHANNEL配置变量为Stable、Beta、Dev或Canary来选择不同
对自动化测试流程的实际影响
安装后,chrome和chromedriver可执行文件会被放置在dynos的PATH中,供Selenium WebDriver、Puppeteer等浏览器自动化工具直接使用。这意味着开发者可以更顺畅地在Heroku CI等持续集成工具中运行浏览器测试,及时在功能分支上发现问题,避免合并后才发现故障。对于依赖自动化测试保障可靠性的Web应用,这一构建包减少了因版本问题导致的测试中断,有助于维持持续交付的稳定性。
Q&A
Heroku的Chrome for Testing构建包有什么作用?
该构建包解决了Chrome与Chromedriver版本不匹配的问题,简化了自动化浏览器测试流程,确保应用的可靠性。
如何在Heroku上安装Chrome for Testing构建包?
用户可以在Heroku Elements Marketplace中安装Chrome for Testing构建包,并在安装前移除现有的Chrome和Chromedriver构建包。
Chrome for Testing构建包支持哪些Chrome版本?
该构建包支持最新的Chrome版本,并允许用户选择不同的发布渠道,如Stable、Beta、Dev或Canary。
为什么Chrome和Chromedriver版本不匹配会影响测试?
版本不匹配会导致自动化测试失败,因为Chrome是一个不断更新的浏览器,特定版本的Chromedriver可能不支持当前的Chrome版本。
开发者如何利用Heroku CI进行自动化浏览器测试?
开发者可以使用Heroku CI等工具自动化浏览器测试,以便在代码更新后及时发现问题。
Chrome for Testing构建包的安装过程复杂吗?
安装过程简单,用户只需在Heroku Elements Marketplace中安装并配置即可。