我刚刚升级到Angular 6,但现在我们的Jenkins构建失败了。
正在运行此命令:
ng test -c karma.conf.cli.js
但错误是:
在项目'projectname'
中找不到配置'karma.conf.cli.js'
但是,有问题的文件存在于项目的根目录中。这个命令在Angular 5上运行正常。任何想法?感谢
仅供参考我可以通过在构建服务器上运行相同的命令来重现错误。我们刚刚将Node.js升级到v8.11.2(最新LTS)
答案 0 :(得分:5)
在Angular Cli的版本6中,命令的选项已更改,而应使用X1:X1000
或-c
来代替--karma-config
。您可以看到所有选项here。
答案 1 :(得分:1)
我尝试了很多,为我工作的人如下。在您的angular.json
文件中,添加下面正在测试的配置部分。
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
....
},
"configurations": { // this will hold a different configuration
"jenkins": {
"karmaConfig": "./karma.conf.ci.js"
}
}
},
然后在运行测试时,将此配置与--configuration jenkins
选项一起使用。所以最后的命令将是
ng test --configuration jenkins
它将选择karma.conf.ci.js
作为在角度cli配置文件的配置部分中设置的配置文件,并使用该配置文件运行单元测试。
答案 2 :(得分:0)
在Angular 6之后,我在詹金斯(Jenkins)遇到了同样的问题,我通过替换来解决:
ng test --single-run --browsers ChromeHeadless -cc
具有:
ng test --watch=false --browsers ChromeHeadless --code-coverage