Ich möchte meine Tests lokal mit Chrome als Browser und auf dem Build-Server mit Phantomjs ausführen. Wie kann ich einstellen, dassJasmine testen Angular App mit verschiedenen Browsern
module.exports = function (config) {
config.set({
basePath: '',
frameworks: ['jasmine', '@angular/cli'],
plugins: [
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-phantomjs-launcher'),
require('karma-jasmine-html-reporter'),
require('karma-coverage-istanbul-reporter'),
require('karma-trx-reporter'),
require('@angular/cli/plugins/karma')
],
client:{
clearContext: false // leave Jasmine Spec Runner output visible in browser
},
files: [
{ pattern: './<%= sourceDir %>/test.ts', watched: false },
],
preprocessors: {
'./<%= sourceDir %>/test.ts': ['@angular/cli']
},
mime: {
'text/x-typescript': ['ts','tsx']
},
coverageIstanbulReporter: {
reports: [ 'html', 'lcovonly' ],
fixWebpackSourcePaths: true
},
angularCli: {
environment: 'dev'
},
reporters: config.angularCli && config.angularCli.codeCoverage
? ['progress', 'coverage-istanbul', 'trx']
: ['progress', 'kjhtml', 'trx'],
trxReporter: {
outputFile: 'test-results.trx',
shortTestName: false
},
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: ['Chrome'],
singleRun: false
});
};
auf meinem Build-Server in den karma.conf.js Datei verwende ich diese config:
browsers: ['PhantomJs'],
singleRun: true
ich die Tests auf meinem Buildserver laufen durch npm Test ausgeführt wird, die Startet den ng-Test. Gibt es eine Möglichkeit, das direkt in dieser Konfigurationsdatei zu konfigurieren, oder sollte ich andere karma.conf.js Dateien verwenden? Und wie soll ich das benutzen? Oder sollte ich einige Argumente für ng Test verwenden?
Dank für Ihre Hinweise verwenden. Jetzt habe ich eine gute Lösung für mich gefunden – cpiock
Gern geschehen. Sie sollten Ihre Antwort als akzeptiert markieren, damit die Frage geschlossen wird. –