时浏览器输出中未显示的Jasmine测试列表

时浏览器输出中未显示的Jasmine测试列表

本文介绍了运行`ng test`时浏览器输出中未显示的Jasmine测试列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我继承了一个角度应用程序,这是几年前首次开发的。我接到的任务之一就是让我们的测试继续进行--因为在过去的一年或更长时间里没有运行过测试。这最初是一个角度2的应用程序,现在已经更新到2.3.1左右。目前我们不能做进一步的更新,因为这将涉及到实质性的重构,我们需要在以后的时间使用撞击。

问题是,当我运行ng test时,它确实会生成一些初始测试。然而,当浏览器窗口打开时,虽然我看到Karma详细信息,显示Karma v1.20 - connected(见图),但我没有看到任何通过Jasmine失败或通过的实际文件列表。

好像茉莉花部分已被禁用。还是隐藏在这里不让人看到?不确定。这是我期望看到的(来自另一个应用的测试结果的屏幕截图):

仅供参考,我在命令行中看到测试已经运行(全部通过):

04 04 2019 13:14:48.834:INFO [karma]: Karma v1.2.0 server started at http://localhost:9876/
04 04 2019 13:14:48.836:INFO [launcher]: Launching browser Chrome with unlimited concurrency
04 04 2019 13:14:48.851:INFO [launcher]: Starting browser Chrome
04 04 2019 13:15:15.529:WARN [karma]: No captured browser, open http://localhost:9876/
Chrome 73.0.3683 (Mac OS X 10.14.4): Executed 5 of 5 SUCCESS (0.199 secs / 0.188 secs)

我已经搜索了各种文件,但到目前为止还没有找到被禁用或注释掉的Jasmine代码的一部分。那么,作为我测试运行的一部分,我该如何着手寻找如何重新启用Jasmine打印输出呢?我可以只卸载并重新安装测试软件包吗?在这种情况下推荐什么?

我还想知道我的karma.conf.js文件是否有问题。我的是这样的:

// Karma configuration file, see link for more information
// https://karma-runner.github.io/0.13/config/configuration-file.html

    module.exports = function (config) {
      config.set({
        basePath: '',
        frameworks: ['jasmine', '@angular/cli'],
        plugins: [
          require('karma-jasmine'),
          require('karma-chrome-launcher'),
          require('karma-jasmine-html-reporter'),
          require('karma-remap-istanbul'),
          require('@angular/cli/plugins/karma')
        ],
        files: [
          { pattern: './src/test.ts', watched: false }
        ],
        preprocessors: {
          './src/test.ts': ['@angular/cli']
        },
        mime: {
          'text/x-typescript': ['ts','tsx']
        },
        remapIstanbulReporter: {
          reports: {
            html: 'coverage',
            lcovonly: './coverage/coverage.lcov'
          }
        },
        angularCli: {
          config: './angular-cli.json',
          environment: 'dev'
        },
        reporters: config.angularCli && config.angularCli.codeCoverage
                  ? ['progress', 'karma-remap-istanbul']
                  : ['progress'],
        port: 9876,
        colors: true,
        logLevel: config.LOG_INFO,
        autoWatch: true,
        browsers: ['Chrome'],
        singleRun: false
      });
    };

推荐答案

尝试将以下行添加到karma.conf.js

client: {
    clearContext: false
}

这篇关于运行`ng test`时浏览器输出中未显示的Jasmine测试列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-22 16:06