Angular Tour of Heroes测试项目无法启动,报错求助
解决Angular Tour of Heroes测试项目启动错误的思路
Let's break down your errors one by one and fix them:
1. 解决找不到test.ts文件的错误
ERROR in Entry module not found: Error: Can't resolve 'C:\code\testing\src\test.ts' in 'C:\code\testing'
ERROR in error TS6053: File 'C:/code/testing/src/test.ts' not found.
- 第一步:确认文件是否存在
先检查你的项目src目录下有没有test.ts文件。如果是下载的官方项目出现缺失,大概率是解压或下载过程中文件丢失了。 - 第二步:手动创建
test.ts(如果缺失)
在src目录下新建test.ts文件,粘贴以下Angular测试环境初始化的默认代码:// This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { <T>(id: string): T; keys(): string[]; }; }; // First, initialize the Angular testing environment. getTestBed().initTestEnvironment( BrowserDynamicTestingModule, platformBrowserDynamicTesting(), ); // Then we find all the tests. const context = require.context('./', true, /\.spec\.ts$/); // And load the modules. context.keys().map(context); - 第三步:检查配置文件路径
如果文件已经存在,打开angular.json和karma.conf.js,确认其中配置的测试入口文件路径是否和实际test.ts的路径一致,排查是否有拼写错误或路径层级错误。
2. 解决找不到jasmine-marbles模块的错误
src/app/twain/twain.component.marbles.spec.ts(3,40): error TS2307: Cannot find module 'jasmine-marbles'.
这个错误是因为项目缺少jasmine-marbles这个开发依赖包,只需执行以下命令安装即可:
- 使用npm:
npm install jasmine-marbles --save-dev - 使用yarn:
yarn add jasmine-marbles --dev
安装完成后,重新启动你的测试命令,这两个错误应该都能解决了。
内容的提问来源于stack exchange,提问作者Rod
相关产品推荐
相关产品推荐

