适用于Chrome / Chromium的Karma customLauncher配置

时间:2016-03-10 15:35:53

标签: google-chrome karma-runner chromium

我已将Karma配置为使用Chrome进行测试:

browsers: [ 'Chrome' ];

每次运行Karma时,都会以某种默认配置启动Chromium,并启用硬件加速。

硬件加速在我的系统上存在一些问题,并使浏览器无法使用,所以我希望它默认关闭。我试图在设置中将其关闭,但我的更改并不持久,每次重新启动Karma或浏览器时,都会再次启用硬件加速。

我有什么方法可以为Chrome创建customLauncher配置,我可以停用硬件加速?

另一方面,如果我可以使用谷歌Chrome而不是Chromium,也会很好看,如果它安装在系统上,Karma似乎总是喜欢Chromium。

我尝试创建以下customLaunchers配置,但无法加载错误:

customLaunchers: {
    Chrome_Persistent: {
        base: 'Chrome',
        chromeDataDir: path.resolve('.chrome')
    }
}

错误是:

错误[config]:配置文件出错!  [ReferenceError:路径未定义] ReferenceError:未定义路径

1 个答案:

答案 0 :(得分:2)

你问两个问题。

对于您的主要问题,Chrome和Chromium有许多开关/标志,您可以在启动应用程序时使用它们。您可以在定义自定义启动器时添加它们:

customLaunchers: {
  chrome_sans_ha: { //give it whatever name you want
    base: 'Chrome',
    flags: ['--disable-gpu',
            '--disable-accelerated-video-decode',
            '--disable-accelerated-mjpeg-decode']
  },

我认为你只需要第一面旗帜。可以找到可能的标记列表here

要调用Chrome而不是Chromium,CHROME_BIN环境变量必须指向chrome的可执行文件。

在我的POSIX shell上,我添加了这一行:

export CHROME_BIN=/usr/bin/google-chrome-stable

你的不同。如果你在Windows上,你有几个选择。

第一次使用cmd

C:> SET CHROME_BIN=C:\Program Files\PathToGoogleChrome.exe

另一个是使用PowerShell,您可以在karma-runner faq

上找到更多相关信息