当我运行grunt服务器时,我的文件编辑被选中,浏览器通过livereload刷新。 当我运行grunt测试时,它运行一次并关闭。
可以通过运行
来模拟此行为yo angular --minsafe mytest
grunt test
当我在Gruntfile中更改karma.unit.singlerun = false时,grunt测试现在表示观察程序正在运行,但是没有文件更改似乎会再次触发运行测试。
如何通过类似于linemanjs工作方式的测试获得重载功能?
答案 0 :(得分:16)
你快到了!您可以在名为autoWatch
的Gruntfile中设置一个附加选项,该选项监视karma.conf.js
中指定的文件以进行更改。 Gruntfile
中的完整条目可能如下所示:
karma: {
unit: {
configFile: 'karma.conf.js',
singleRun: true,
autoWatch: false
},
server: {
configFile: 'karma.conf.js',
singleRun: false,
autoWatch: true
}
}
答案 1 :(得分:0)
我设置如下
karma: {
unit: {
configFile: 'karma.conf.js',
singleRun: false,
autoWatch: true
}
}
当我更改文件时,它无法重新运行单元测试,grunt karma:unit output
PhantomJS 1.9.7 (Linux) Controller: MainCtrl should attach a list of awesomeThings to the scope FAILED
Expected 3 to be 100.
PhantomJS 1.9.7 (Linux): Executed 1 of 1 (1 FAILED) ERROR (0.04 secs / 0.014 secs)
找到它:我在Virtual中使用共享文件夹并在虚拟机外部更改它,以便autoWatch无法识别这些更改。