Angular 从 14 更新到版本 15,现在 ng 测试得到“未找到规格”

P. *_*uhn 7 karma-jasmine angular

我已将 Angular 14 应用程序更新为 Angular 15.1.4 应用程序。该应用程序是使用 Angular 4 创建的,并更新到每个后续版本。

\n

\'ngserve\' 构建并启动应用程序。由于启动服务和测试时出现一条消息,我最终删除了 .browserslistrc。运行“ng test”,我得到“未找到规格”,尽管我应该进行 100 次测试。测试在版本 14 中有效。测试浏览器中的消息是:

\n
Incomplete: No specs found, , randomized with seed 89005\n
Run Code Online (Sandbox Code Playgroud)\n

命令行上的消息是:

\n
> ng test\n\xe2\x88\x9a Browser application bundle generation complete.\n11 02 2023 14:29:13.412:WARN [karma]: No captured browser, open http://localhost:9876/\n11 02 2023 14:29:13.429:INFO [karma-server]: Karma v6.4.1 server started at http://localhost:9876/\n11 02 2023 14:29:13.430:INFO [launcher]: Launching browsers Chrome with concurrency unlimited\n11 02 2023 14:29:13.436:INFO [launcher]: Starting browser Chrome\n11 02 2023 14:29:18.071:INFO [Chrome 109.0.0.0 (Windows 10)]: Connected on socket rK2xPAWwWBFkQCuuAAAB with id 43283367\nChrome 109.0.0.0 (Windows 10): Executed 0 of 0 SUCCESS (0.004 secs / 0 secs)\nTOTAL: 0 SUCCESS\n
Run Code Online (Sandbox Code Playgroud)\n

我不是业力运作方面的专家。它就是有效的。我比较了一个新创建的版本 15 应用程序,该应用程序测试有效,因此我删除了在 angular.json 文件中加载 karma 配置文件,但仍然没有规格。我没有看到任何明显的警告或错误消息。我不知道下一步该做什么才能让测试再次发挥作用。

\n

GitHub项目可以找到:https://github.com/PHuhn/Net.Incident4/tree/main/net-incident

\n

P. *_*uhn 17

我更多地查看了正在运行的新 Angular 15 应用程序中的 angular.json 文件。我必须做两件事:

  1. 删除“主要”
  2. 改变“polyfills”

更改自:

   "options": {
     "main": "src/test.ts",
     "polyfills": "src/polyfills.ts",
     "tsConfig": "tsconfig.spec.json",
Run Code Online (Sandbox Code Playgroud)

变成:

   "options": {
     "polyfills": [
       "zone.js",
       "zone.js/testing"
     ],
     "tsConfig": "tsconfig.spec.json",
Run Code Online (Sandbox Code Playgroud)