angular - 如果在 NX 工作区中生成预设为“空”的 Angular 项目,如何运行 e2e 测试?
问题描述
如果您使用预设创建 NX 工作区angular
,则可以使用成功运行 e2e 测试yarn e2e
yarn create nx-workspace start-angular --preset=angular --appName=web --packageManager=yarn --nx-cloud=false --style=scss --routing --viewEncapsulation=Emulated --enableIvy --unitTestRunner=jest --e2eTestRunner=cypress --linter=eslint
cd start-angular
yarn e2e
但是,如果您使用预设创建工作区empty
并稍后添加 Angular 项目(例如,能够传递其他选项,例如--strict
),
yarn create nx-workspace start-empty --preset empty --packageManager=yarn --nx-cloud=false
cd start-empty
yarn add --dev @nrwl/angular
yarn nx generate @nrwl/angular:application --name=web --strict --style=scss --routing --viewEncapsulation=Emulated --enableIvy --unitTestRunner=jest --e2eTestRunner=cypress --linter=eslint
yarn e2e
运行 e2e 测试时出现以下错误(输出yarn e2e
):
yarn run v1.22.10
$ nx e2e
No project name specified. Using default project : web
ERROR Cannot find target 'e2e' for project 'web'
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
如何更改工作区中的配置start-empty
以便能够使用运行 e2e 测试yarn e2e
?你可以运行yarn e2e web-e2e
,但我不明白,为什么yarn e2e
不在 NX 工作区工作,start-empty
而是在start-angular
.
解决方案
你能试试nx e2e web-e2e
吗?这是默认 e2e 项目的名称,它是web
在您运行nx generate @nrwl/angular:application
原理图时为具有该名称的应用程序创建的。确实,在您的项目workspace.json
中将没有e2e
目标web
,但该项目将有一个目标,web-e2e
即您要运行的 e2e 项目!
推荐阅读
- php - 数组值放入方括号 [ ]
- c - c编程,c书中的数据结构,困惑
- angular - 使用 FormArray 重置表单时删除字段错误
- python - django 表单中的动态字段
- laravel - laravel 来自单个查询的多个结果
- html - 让徽标出现在导航栏的右侧
- javascript - JS/Vue:如何为美国自动完成选择下拉菜单?
- swift4.2 - iOS 12 存在(fromrootviewcontroller)导致应用程序冻结
- python - 为什么 pd.Series([np.nan]) | pd.Series([True]) 评估为 False?
- javascript - 从php返回数组值(图像文件名到javascript)