【问题标题】:Run travis - karma tests on multiple browsers?在多个浏览器上运行 travis - 业力测试?
【发布时间】:2016-08-06 12:31:37
【问题描述】:

通常,使用 Karma 可以在多个浏览器上运行我的测试。是否有可能以某种方式在 Travis 上运行相同的测试?

据我所知,Chrome 需要对 travis 配置文件进行一些修改。 https://stackoverflow.com/a/25661593/607033

这些修改是否会干扰我想在 travis 上运行的其他浏览器(例如 Firefox、Opera、Msie、PhantomJS 等)?

【问题讨论】:

    标签: karma-runner travis-ci


    【解决方案1】:

    我想出了以下 karma.conf.js 文件:

    module.exports = function (config) {
        var options = {
            plugins: [
                "karma-browserify",
                "karma-chrome-launcher",
                "karma-firefox-launcher",
                "karma-ie-launcher",
                //"karma-opera-launcher",
                "karma-phantomjs-launcher",
                "karma-mocha"
            ],
            ...
            browsers: [
                "Chrome",
                "Firefox",
                "IE",
                //"Opera",
                "PhantomJS"
            ]
        };
    
        if (process.env.TRAVIS) {
            options.customLaunchers = {
                Chrome_travis_ci: {
                    base: 'Chrome',
                    flags: ['--no-sandbox']
                }
            };
            options.browsers = [
                "Chrome_travis_ci",
                "Firefox",
                //"IE",
                //"Opera",
                "PhantomJS"
            ];
        }
    
        config.set(options);
    };
    

    以及以下 .travis.yml:

    language: node_js
    node_js:
      - "5"
    before_install:
      - export CHROME_BIN=chromium-browser
      - export DISPLAY=:99.0
      - sh -e /etc/init.d/xvfb start
    

    Internet Explorer 仅适用于 Windows 环境,因此 Travis 不支持它(因为它使用 Linux)。 karma-opera-launcher 有严重的错误,所以我无法在 Travis 和 Windows 上使用它。根据该插件的 github 页面,它应该可以在 Linux 上运行,但我不想花更多时间在它上面。

    因此修改不会相互干扰,因为只有 Chrome 需要修改,并且这些修改包含在自定义启动器中。所有非 PhantomJS 浏览器都需要在 .travis.yml 中显示和 xvfb。

    另一个可能的解决方案是使用 SauceLabs,但这个测试对我来说并不重要,所以我不想为此支付 250 美元/年。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-09
      • 1970-01-01
      • 1970-01-01
      • 2012-06-20
      • 2018-03-28
      • 2015-03-26
      • 2014-05-24
      • 2017-11-02
      相关资源
      最近更新 更多