pau*_*reg 6 javascript unit-testing karma-runner
当由于错误(如语法错误)而无法由Karma运行测试时,Karma会抱怨这样的警告:
INFO [karma]: Karma v0.12.31 server started at http://localhost:9876/
INFO [launcher]: Starting browser PhantomJS
INFO [PhantomJS 1.9.8 (Linux)]: Connected on socket WT-AsaXZq4odkQe2DgZJ with id 10861626
WARN [web-server]: 404: /undefinedhttp%3A%2F%2Flocalhost%3A9876%2Fbase%2Ftests%2Funit%2Fjs%2Fspecs%2Fcore%2FDeviceSpec.js%3F1e346ab1ad6e6e9240be6a6d5effaaa8f0dd96d8/9/%22ReferenceError%3A%20Can't%20find%20variable%3A%20SYNTAXERROR%22
Run Code Online (Sandbox Code Playgroud)
非转义的最后一行是:"/ undefinedhttp://localhost:9876/base/tests/unit/js/specs/core/DeviceSpec.js?1e346ab1ad6e6e9240be6a6d5effaaa8f0dd96d8/9/"ReferenceError:找不到变量:SYNTAXERROR""
这是正确的,因为我在我的测试中的某处插入了SYNTAXERROR以用于该问题.
所以测试被忽略但是,由于其他测试都没问题,因此Karma返回测试已通过:
PhantomJS 1.9.8 (Linux): Executed 41 of 41 SUCCESS (0.354 secs / 0.016 secs)
? echo $?
0
Run Code Online (Sandbox Code Playgroud)
如果Karma无法执行所有测试,我希望Karma失败(我不认为有任何理由!).
我没有找到任何配置变量来这样做.
我找到了Karma打印上面警告的行,但我不明白为什么它被处理为404 ...
任何想法使Karma无法执行所有测试时失败?
I\xe2\x80\x99m 使用脚本,如果WARNkarma 显示则失败:
#!/bin/bash\nset -eo pipefail\n\nmkdir -p tests/unit/js/dist || true\n./node_modules/.bin/karma start tests/unit/js/karma.conf.js --port 9875 | tee tests/unit/js/dist/results.txt\n\nif grep 'WARN' tests/unit/js/dist/results.txt; then\n exit 1\nelse\n exit 0\nfi\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
1366 次 |
| 最近记录: |