Bitbucket - 您平台上的 Chrome 浏览器没有二进制文件

Bitbucket - No binary for Chrome browser on your platform

我正在研究基本的 React 项目,我能够 运行 在我的 mac 和 chrome 上使用 karma 和 mocha 进行测试。 但是 bitbucket pipeline 说我没有 chrome,所以问题是如何在那里安装 chrome,每次构建时我都必须安装它吗?

我的 yml

image: node:7.10.0
    pipelines:
      default:
        - step:
            script:
              - npm install -g bower
              - bower install --allow-root
              - npm install
              - npm test

karma.conf.js

module.exports = function(config) {
config.set({
    basePath: '',
    frameworks: ['mocha'],
    files: [
        './tests/*.js'
    ],
    exclude: [],
    preprocessors: {
        './tests/*.js': ['webpack']
    },
    // webpack configuration
    webpack: require('./webpack.dev.js'),
    webpackMiddleware: {
        stats: 'errors-only'
    },
    reporters: ['progress'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: true,
    browsers: ['Chrome'], //run in Chrome
    // Continuous Integration mode
    // if true, Karma captures browsers, runs the tests and exits
    singleRun: true,
    concurrency: Infinity
});

};

bitbucket-pipelines.yml 文件中的 image: node:7.10.0 行指定要使用的 Docker 图像。在你的例子中,它是一个普通节点版本 7.10.0 图像,因此其中没有包含 Chrome。

您可以做两件事:

  • 阅读 Docker,了解如何创建包含 Chrome(或任何其他软件)的您自己的图像,然后在您的管道中使用该图像
  • 或者,可能更简单:搜索由其他人创建的现有 Docker 图像,其中包括节点、Chrome 以及您可能需要的其他软件。然后,在 image: <image-name> 配置行中使用该图像。

在任何一种情况下,一旦您有了合适的图像,当您的管道 运行 和 Chrome 将立即可用时将需要它,并且您不需要任何类型的“安装” ”.