Grunt、Angular、および Karma を使用していますが、次の問題があります。バックグラウンドですべてのテストを実行し、Karma のインスタンスを 1 つだけ使用するには、カルマ タスクの名前に「:run」を追加する必要があることを読みました。 . 素敵で簡単に聞こえます。単体テストでは機能しますが、e2e テストで同じことをしようとすると機能しません。何らかの理由で私は得ています:
Running "karma:e2e:run" (karma) task
NOT FOUND
「:run」を削除すると、テストがトリガーされるたびに新しい Chrome ウィンドウが表示されます。
私の gruntfile の関連部分は次のようになります。
karma : {
e2e : {
configFile : 'src/config/karma-e2e.conf.js',
background : true
},
unit : {
configFile : 'src/config/karma.conf.js',
background : true
}
},
watch : {
scripts : {
files : ["src/app/*.coffee", "src/partials/*.html","src/*.html","src/styl/*.styl"],
tasks : ['nah'],
options : {
spawn : false,
livereload: true
}
}
}
grunt.registerTask('nah', ['stylus','coffeelint','coffee','concat','karma:unit:run','karma:e2e:run','watch']);
私の Karma 設定は次のようになります。
module.exports = function(config){
config.set({
basePath : '../',
files : [
'../test/e2e/*.js'
],
autoWatch : false,
//singleRun : true,
reporters : 'dots',
frameworks : ['ng-scenario'],
browsers : ['Chrome'],
proxies : {
'/': 'http://localhost:3000/src/'
},
urlRoot : '/__e2e/',
plugins : [
'karma-junit-reporter',
'karma-chrome-launcher',
'karma-firefox-launcher',
'karma-jasmine',
'karma-ng-scenario'
],
junitReporter : {
outputFile: 'test_out/e2e.xml',
suite: 'e2e'
}
});
};
何が見つからないのか、それを修正する方法がよくわかりません。結果が得られずにグーグルでいじっているので、ここで質問することにしました。ありがとう!