2017-06-28 5 views
0

Ich habe einen Fehler beim Versuch, eine Typoskript-Klasse in meine Testdatei zu importieren. Das ist mein karma.conf.jsAngular 2/4 Karma testen

// Karma configuration 
// Generated on Mon Jun 12 2017 14:21:41 GMT+0200 (Central European Daylight Time) 

module.exports = function (config) { 
    config.set({ 

     // base path that will be used to resolve all patterns (eg. files, exclude) 
     basePath: 'src/app', 


     // frameworks to use 
     // available frameworks: https://npmjs.org/browse/keyword/karma-adapter 
     frameworks: ['jasmine'], 


     // list of files/patterns to load in the browser 
     files: [ 
      { pattern: '**/*.spec.ts' } 
     ], 

     // list of files to exclude 
     exclude: [ 
     ], 

     // preprocess matching files before serving them to the browser 
     // available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor 
     preprocessors: { 
      '**/*.ts': ['typescript'] 
     }, 

     // test results reporter to use 
     // possible values: 'dots', 'progress' 
     // available reporters: https://npmjs.org/browse/keyword/karma-reporter 
     reporters: ['progress'], 


     // web server port 
     port: 9876, 


     // enable/disable colors in the output (reporters and logs) 
     colors: true, 


     // level of logging 
     // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG 
     logLevel: config.LOG_INFO, 


     // enable/disable watching file and executing tests whenever any file changes 
     autoWatch: true, 


     // start these browsers 
     // available browser launchers: https://npmjs.org/browse/keyword/karma-launcher 
     browsers: ['Chrome'], 


     // Continuous Integration mode 
     // if true, Karma captures browsers, runs the tests and exits 
     singleRun: false, 

     // Concurrency level 
     // how many browser should be started simultaneous 
     concurrency: Infinity, 

     mime: { 
      'text/x-typescript': ['ts', 'tsx'] 
     } 
    }); 
}; 

ich einen einfachen Test geschrieben, die nichts tut, sondern versucht, eine Klasse zu importieren:

import { ApiResponseTimeRepository } from './ApiResponseTimeRepository'; 


describe('testing test',() => { 
    it('should pass',() => { 
     expect(1 + 1).toBe(2); 
    }); 
}); 

Aber wenn ich den Test ausführen ich Uncaught ReferenceError: exports is not defined at TestRepositories.spec.js:2.

Test funktioniert gut, wenn ich den Import-Teil weglasse, also dachte ich, es gab ein Problem mit dem Typoskript tranpiling, also habe ich karma-typescript-preprocessor installiert, aber ich bekomme den Fehler immer wieder. Was scheint das Problem zu sein?

+0

Ich denke, die' .ts' Erweiterung für die Spezifikation verwenden Datei kann helfen. –

+0

Es ist '.ts' aber es wird zu' .js' transpiliert – Norgul

Antwort

0

Falls jemand das gleiche Problem hat, habe ich es gelöst durch Installation dieses Pakets: karma-typescript und den Anweisungen folgen `einzurichten karma.conf.js

Verwandte Themen