如何在 NX 工作区中运行特定的角度规格测试文件?

Raj*_*mar 3 karma-jasmine ngrx angular-cli angular nrwl

有没有办法在 Nx 工作空间中运行特定的角度规格测试文件?

最近我将我的 Angular 4 cli 应用程序移到了 Nx 工作空间。以前我使用fdescribe来实现此功能。
所以请建议我是否有任何选项可以在 Nx 工作空间中执行此操作?

小智 37

这对我有用:

nx run <project-name>:test --testFile=<file-name>
Run Code Online (Sandbox Code Playgroud)


Azi*_*ark 11

这对我有用

 nx test --test-file example.spec.ts
Run Code Online (Sandbox Code Playgroud)

  • 您需要指定项目名称(工作区可能有多个项目)。像这样:`nx test projectName --test-file example.spec.ts` (12认同)
  • 您甚至可以更具体,添加 `--test-name-pattern=regex` 以针对该文件中的特定测试。 (3认同)

小智 5

对我来说,手表标签发挥了魔力:

\n\n

ng test --watch

\n\n

在完成所有内容之前,它为我提供了以下选项:

\n\n
 \xe2\x80\xba Press a to run all tests.\n \xe2\x80\xba Press f to run only failed tests.\n \xe2\x80\xba Press p to filter by a filename regex pattern.\n \xe2\x80\xba Press t to filter by a test name regex pattern.\n \xe2\x80\xba Press q to quit watch mode.\n \xe2\x80\xba Press Enter to trigger a test run.\n
Run Code Online (Sandbox Code Playgroud)\n\n

选择“p”选项并输入xy.service.spec.ts效果很好。

\n\n

注意:我使用的不是最新版本 ( "@nrwl/nx": "7.4.0")

\n


Sri*_*ram 3

这与我们对单个应用程序执行此操作的方式相同,但请注意,您应该将 --app='your-app-name' 与 ng test 一起使用,因此最终命令如下所示,

ng test --app='app1'
Run Code Online (Sandbox Code Playgroud)

  • Lib 无法单独测试,我们可以将 fdescribe 添加到 lib 中的 spec 文件中,并在使用该 lib 的应用程序上运行测试。 (2认同)