Angular CLI-ng 테스트 명령
통사론
ng test <project> [options]
ng t <project> [options]
ng 테스트는 각도 앱 코드에서 단위 테스트 케이스를 실행합니다. 옵션은 선택적 매개 변수입니다.
인수
Sr. 아니. | 인수 및 구문 | 기술 |
---|---|---|
1 | <프로젝트> | 테스트 할 프로젝트의 이름입니다. |
옵션
Sr. 아니. | 옵션 및 구문 | 기술 |
---|---|---|
1 | --browsers = 브라우저 | 테스트가 실행되는 브라우저를 재정의합니다. |
2 | --codeCoverage = true | false | 코드 커버리지 보고서를 출력합니다. 기본값 : false |
삼 | --codeCoverageExclude | 코드 적용 범위에서 제외 할 Glob입니다. |
4 | --configuration = configuration | angular.json의 "configurations"섹션에 지정된 명명 된 빌드 대상입니다. 명명 된 각 대상에는 해당 대상에 대한 옵션 기본값 구성이 함께 제공됩니다. 이를 설정하면 "--prod"플래그가 명시 적으로 재정의됩니다. 별칭 : -c |
5 | --help = true | false | json | JSON | 콘솔에이 명령에 대한 도움말 메시지를 표시합니다. 기본값 : false |
6 | --포함 | 작업 공간 또는 프로젝트 루트와 관련된 포함 할 파일의 Glob입니다. 2 가지 특별한 경우가 있습니다-
|
7 | --karmaConfig = karmaConfig | Karma 구성 파일의 이름입니다. |
8 | --main = main | 기본 진입 점 파일의 이름입니다. |
9 | --투표 | 폴링 시간을 밀리 초 단위로 감시하는 파일을 활성화하고 정의합니다. |
10 | --polyfills = polyfills | 폴리 필 파일의 이름입니다. |
11 | --preserveSymlinks = true | false | 모듈을 확인할 때 실제 경로를 사용하지 마십시오. 기본값 : false |
12 | --prod = true | false | "--configuration = production"의 약자입니다. true 인 경우 빌드 구성을 프로덕션 대상으로 설정합니다. 기본적으로 프로덕션 대상은 모든 빌드가 번들링, 제한된 트리 쉐이킹 및 제한된 데드 코드 제거를 사용하도록 작업 공간 구성에 설정됩니다. |
13 | --progress = true | false | 빌드하는 동안 진행 상황을 콘솔에 기록합니다. |
13 | --progress = true | false | 빌드하는 동안 진행 상황을 콘솔에 기록합니다. |
14 | -기자 | 사용할 카르마 기자. 카르마 주자에게 직접 전달되었습니다. |
15 | --sourceMap = true | false | 출력 소스 맵. 기본값 : true |
16 | --tsConfig = tsConfig | TypeScript 구성 파일의 이름입니다. |
17 | --watch = true | false | 파일이 변경되면 빌드를 실행합니다. |
18 | --webWorkerTsConfig = webWorkerTsConfig | 웹 작업자 모듈에 대한 TypeScript 구성. |
먼저 ng build 명령을 사용하여 업데이트 된 각도 프로젝트로 이동합니다 .
이제 테스트 명령을 실행하십시오.
예
\>Node\>TutorialsPoint> ng test
...
WARN: ''app-goals' is not a known element:
1. If 'app-goals' is an Angular component, then verify that it is part of this module.
2. If 'app-goals' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message.'
Chrome 83.0.4103 (Windows 7.0.0): Executed 0 of 4 SUCCESS (0 secs / 0 secs)
...
AppComponent should render title FAILED
TypeError: Cannot read property 'textContent' of null
at <Jasmine>
at UserContext.<anonymous> (http://localhost:9876/_karma_webpack_/src/app/app.component.spec.ts:33:51)
...
Chrome 83.0.4103 (Windows 7.0.0): Executed 1 of 4 (1 FAILED) (0 secs / 0.203 secs)
...
Chrome 83.0.4103 (Windows 7.0.0): Executed 2 of 4 (1 FAILED) (0 secs / 0.221 secs)
...
Chrome 83.0.4103 (Windows 7.0.0): Executed 4 of 4 (1 FAILED) (0 secs / 0.244 sec
Chrome 83.0.4103 (Windows 7.0.0): Executed 4 of 4 (1 FAILED) (0.282 secs / 0.244
secs)
TOTAL: 1 FAILED, 3 SUCCESS
이제 실패를 수정하려면 app.component.spec.ts를 업데이트하십시오.
app.component.spec.ts
import { TestBed, async } from '@angular/core/testing';
import { RouterTestingModule } from '@angular/router/testing';
import { AppComponent } from './app.component';
describe('AppComponent', () => {
beforeEach(async(() => {
TestBed.configureTestingModule({
imports: [
RouterTestingModule
],
declarations: [
AppComponent
],
}).compileComponents();
}));
it('should create the app', () => {
const fixture = TestBed.createComponent(AppComponent);
const app = fixture.componentInstance;
expect(app).toBeTruthy();
});
});
이제 테스트 명령을 실행하십시오.
예
\>Node\>TutorialsPoint> ng test
...
WARN: ''app-goals' is not a known element:
1. If 'app-goals' is an Angular component, then verify that it is part of this m
odule.
2. If 'app-goals' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@
NgModule.schemas' of this component to suppress this message.'
Chrome 83.0.4103 (Windows 7.0.0): Executed 1 of 2 SUCCESS (0 secs / 0.053 secs)
...
Chrome 83.0.4103 (Windows 7.0.0): Executed 2 of 2 SUCCESS (0.097 secs / 0.073 se
cs)
TOTAL: 2 SUCCESS
ng test는 또한 브라우저를 열고 테스트 상태를 표시합니다.