即使有2次测试,Karma也会因超时而断开连接

时间:2018-03-26 08:47:24

标签: javascript karma-runner

我想在我的项目中使用带有tap测试框架的Karma测试运行器,当只有2个测试时,我会因并行运行测试而陷入困境

当测试文件夹中有多个测试时,我无法运行业力。我已经在网上搜索了这个问题,看到大多数人因为100次测试而看到了内存问题,而且主要是通过更改超时值来解决。我尝试更改所有超时和断开连接值,但它没有帮助。

我已经阅读了所有那些StackOverflow页面,我不认为这是一个记忆等等,因为只有2个测试就会出现同样的问题。不管怎么说,人们可能直到今天仍然存在记忆问题。

在测试中,(当测试只进行一次测试时,此测试运行正常)只有第一步运行正常我测试项目是否存在 - > t.ok(项目,' projectexist') 在那一步之后,无论我做什么超时值,我都会看到DISCONNECT错误。我也尝试打开2个浏览器没有帮助(因为我的测试需要来自浏览器的合作伙伴。)

    browserDisconnectTimeout: 100000,
    browserNoActivityTimeout: 100000,
    browserDisconnectTolerance: 10,

以下是我在控制台上收到的错误消息

26 03 2018 09:59:37.240:WARN [Chrome 65.0.3325 (Windows 7.0.0)]: Disconnected (1 times), because no message in 10000 ms.
Chrome 65.0.3325 (Windows 7.0.0) ERROR
  Disconnected, because no message in 10000 ms.
Chrome 65.0.3325 (Windows 7.0.0): Executed 0 of 0 DISCONNECTED (10.214 secs / 0 secs)
error Command failed with exit code 1.

我看到的另一个有趣的问题是,它失败了2个完全相同的测试,但是如果我切断其中一个,我看到SUCCESS没有运行完整测试中的所有步骤。 让我们说我有2个测试

1完整测试 2 1步测试

注意:通常只有一次测试时,完整的测试运行正常,如果我使代码失败,也会显示正确的失败,但是当文件夹中有2个测试时,这种情况完全是奇怪的行为

karma配置文件

module.exports = function (config) {
  config.set({
    plugins: [
      require('karma-webpack'),
      require('karma-tap'),
      require('karma-chrome-launcher')
    ],

    browserDisconnectTimeout: 100000,
    browserNoActivityTimeout: 100000,
    browserDisconnectTolerance: 10,
    basePath: '',
    frameworks: ['tap'],
    files: ['test/**/*.js'],

    preprocessors: {
      'test/**/*.js': ['webpack']
    },

    webpack: {
      node: {
        fs: 'empty'
      }
    },

    webpackMiddleware: {
      noInfo: true
    },

    reporters: ['dots'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: true,
    browsers: ['Chrome'],
    singleRun: false
  })
}

0 个答案:

没有答案