使用Karma运行javascript单元测试时,Gradle exec任务挂起

时间:2015-10-09 00:08:06

标签: javascript java gradle karma-runner

我正在尝试从我的构建工具gradle运行我的javascript单元测试。如果我从我的项目源存储库运行karma测试通过,但是从同一位置,如果我使用gradle运行相同的命令,则测试挂起。我必须cntl + C out。

karma启动的浏览器只是挂起。经过进一步检查,我可以看到我的测试正在通过,但浏览器并没有退出。

karma start --single-run true
08 10 2015 16:38:07.607:INFO [karma]: Karma v0.13.10 server started at http://localhost:9876/
08 10 2015 16:38:07.612:INFO [launcher]: Starting browser Safari
08 10 2015 16:38:08.349:INFO [Safari 9.0.0 (Mac OS X 10.11.0)]: Connected on socket S0oEA_C63p3UJxq_AAAA with id 27120637
08 10 2015 16:38:08.388:INFO [Safari 9.0.0 (Mac OS X 10.11.0)]: Connected on socket Sm-S0etS3fGu-MB_AAAB with id 66671614
Safari 9.0.0 (Mac OS X 10.11.0): Executed 2 of 2 SUCCESS (0.009 secs / 0 secs)
TOTAL: 2 SUCCESS

gradle karma
:karma
08 10 2015 16:50:09.773:INFO [karma]: Karma v0.13.10 server started at http://localhost:9876/
08 10 2015 16:50:09.779:INFO [launcher]: Starting browser Firefox
08 10 2015 16:50:11.201:INFO [Firefox 41.0.0 (Mac OS X 10.11.0)]: Connected on socket 9AFBXsk5EfGKsFt_AAAA with id 32194330
08 10 2015 16:50:17.260:WARN [Firefox 41.0.0 (Mac OS X 10.11.0)]: Disconnected (1 times)
> Building 0% > :karma

Gradle Task

task karma(type:Exec) {
    commandLine 'karma', 'start', '--single-run true'
}

Karma控制台

SUCCESS  test all the core libraries debug.html:35:1
SUCCESS  should be three debug.html:35:1
Skipped 0 tests debug.html:25:29

我直接从stackoverflow这里

拉了这个gradle任务

1 个答案:

答案 0 :(得分:3)

我明白了。

在我的karma.conf.js文件中,我有

singleRun: false

一旦我将其更改为true,它就会起作用

<强> FIX

更改karma.conf.js文件中的此设置

singleRun: true