Angular 6升级不执行测试

时间:2018-05-21 17:46:30

标签: angular karma-runner karma-jasmine angular6

我将我的应用程序升级到Angular 6.在我必须对代码进行的所有更新之后,我的应用程序运行,但测试不会执行。

我使用getData创建了一个新应用,并对下面的ng new Angular6karma.conf.jspackage.jsontest.ts进行了比较。

karma.conf.js

angular.json (fmr angular-cli.json)

test.ts

module.exports = function (config) {
  config.set({
    basePath: '',
     frameworks: ['jasmine', '@angular-devkit/build-angular'],
     plugins: [
       require('karma-jasmine'),
       require('karma-chrome-launcher'),
       require('karma-jasmine-html-reporter'),
       require('karma-coverage-istanbul-reporter'),
       require('@angular-devkit/build-angular/plugins/karma')
     ],
     client: {
       clearContext: false // leave Jasmine Spec Runner output visible in browser
     },
     coverageIstanbulReporter: {
       dir: require('path').join(__dirname, '../coverage'),
       reports: ['html', 'lcovonly'],
       fixWebpackSourcePaths: true
     },
     reporters: ['progress', 'kjhtml'],
     port: 9876,
     colors: true,
     logLevel: config.LOG_INFO,
     autoWatch: true,
     browsers: ['Chrome'],
     singleRun: false
  });
};

的package.json

import 'zone.js/dist/zone-testing';
import { getTestBed } from '@angular/core/testing';
import {
  BrowserDynamicTestingModule,
  platformBrowserDynamicTesting
} from '@angular/platform-browser-dynamic/testing';

declare const require: any;

// First, initialize the Angular testing environment.
getTestBed().initTestEnvironment(
  BrowserDynamicTestingModule,
  platformBrowserDynamicTesting()
);
// Then we find all the tests.
const context = require.context('./', true, /\.spec\.ts$/);
// And load the modules.
context.keys().map(context);

angular.json

{
  "name": "awesomy",
  "version": "0.0.0",
  "license": "MIT",
  "scripts": {
    "ng": "ng",
    "start": "ng serve --proxy-config proxy.conf.js",
    "build": "ng build --output-hashing=all --output-path=build/ --prod --source-map",
    "test": "ng test --watch=false",
    "lint": "ng lint taxonomy --format stylish --force && ng lint taxonomy-e2e --format stylish --force",
    "e2e": "ng taxonomy-e2e --proxy-config proxy.conf.js"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "6.0.2",
    "@angular/cdk": "^6.0.0",
    "@angular/common": "6.0.2",
    "@angular/compiler": "6.0.2",
    "@angular/core": "6.0.2",
    "@angular/forms": "6.0.2",
    "@angular/http": "6.0.2",
    "@angular/material": "^6.0.0",
    "@angular/platform-browser": "6.0.2",
    "@angular/platform-browser-dynamic": "6.0.2",
    "@angular/router": "6.0.2",
    "@codebakery/origami": "^1.3.0-beta.1",
    "@ibm/plex": "^1.0.2",
    "@swimlane/ngx-datatable": "11.3.2",
    "@types/hammerjs": "^2.0.35",
    "@types/lodash": "^4.14.108",
    "bluebird": "^3.5.1",
    "c3": "^0.4.18",
    "core-js": "^2.4.1",
    "d3": "^4.10.2",
    "hammerjs": "^2.0.8",
    "moment": "^2.20.1",
    "ngx-uploader": "^4.3.0",
    "rxjs": "^6.1.0",
    "socket.io-client": "^2.0.4",
    "zone.js": "^0.8.26"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~0.6.3",
    "@angular/cli": "6.0.3",
    "@angular/compiler-cli": "6.0.2",
    "@angular/language-service": "6.0.2",
    "@ng-select/ng-select": "^2.0.2",
    "@types/jasmine": "^2.8.7",
    "@types/jasminewd2": "~2.0.2",
    "@types/node": "~6.0.60",
    "codelyzer": "4.2.0",
    "jasmine-core": "^3.1.0",
    "jasmine-spec-reporter": "^4.2.1",
    "karma": "^2.0.2",
    "karma-chrome-launcher": "^2.2.0",
    "karma-cli": "~1.0.1",
    "karma-coverage-istanbul-reporter": "^1.2.1",
    "karma-jasmine": "~1.1.0",
    "karma-jasmine-html-reporter": "^0.2.2",
    "karma-phantomjs-launcher": "^1.0.4",
    "karma-typescript": "^3.0.12",
    "protractor": "5.2.0",
    "rxjs-compat": "^6.1.0",
    "rxjs-tslint": "^0.1.4",
    "ts-node": "3.2.0",
    "tslint": "5.7.0",
    "typescript": "2.7.2"
  }
}

终端

{
...,
"test": {
      "builder": "@angular-devkit/build-angular:karma",
      "options": {
        "main": "src/test.ts",
        "karmaConfig": "./karma.conf.js",
        "polyfills": "src/polyfills.ts",
        "tsConfig": "src/tsconfig.spec.json",
        "scripts": [],
        "styles": [
          "src/styles.css",
          "node_modules/c3/c3.min.css"
        ],
        "assets": [
          "src/assets",
          "src/favicon.ico"
        ],
        "watch": false,
        "codeCoverage": true
      }
    },
...}

感谢您的时间!

0 个答案:

没有答案