使用angular-cli
创建新组件时的预期行为是angular.json.projects
已更新为描述了新创建组件的条目。观察到的行为是angular-cli
不这样做。
运行ng test newComponent
并收到消息Project 'inline' does not support the 'test' target.
在我更新ng test newComponent
以描述新创建的组件之后,angular.json.projects
开始工作。
我正在将Angular 2组件库迁移到新的Angular 7 Workspace模型。我正在使用Todd Palmer的The Angular Library Series - Creating a Library with Angular CLI食谱从头开始构建它。
尽管recipe不建议测试新创建的组件,但我进行了测试并观察到此处描述的故障。
复制步骤
ng new workspace --create-application=false
ng generate library library --prefix=abc
ng generate application living-style-guide
ng generate component newComponent —project=library
ng test newComponent —project=library
观察到的行为 最后一条命令失败,并显示以下消息
Project 'newComponent' does not support the 'test' target.
Error: Project 'newComponent' does not support the 'test' target.
at TestCommand.initialize (./node_modules/@angular/cli/models/architect-command.js:53:19)
at process._tickCallback (internal/process/next_tick.js:68:7)
at Function.Module.runMain (internal/modules/cjs/loader.js:757:11)
at startup (internal/bootstrap/node.js:283:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)
预期行为 angular-cli更新了angular.json项目对象,其中包含对新创建的库组件及其单元测试的描述。
答案 0 :(得分:0)
与angular-cli的Alan Agius进行了讨论。艾伦(Alan)向我解释说,ng test <target>
仅适用于projects
,而不适用于库组件。他建议我关注他们的问题#3603。
我在最后一封给Alan的电子邮件中提醒他,一个拥有很多组件库,正在开发新组件并希望将组件定位到测试中的开发人员应该能够做到这一点。一个简单的ng
命令。