나는 Angular 2 (그리고 Angular는 일반적으로 …)를 처음 사용하고 매우 매력적입니다. Angular CLi 를 사용하여 프로젝트를 생성하고 제공하고 있습니다. 비록 작은 학습 프로젝트에서는 필요 이상으로 많은 것을 생산하지만 잘 작동하는 것 같습니다. 그러나 그것은 예상됩니다.
spec.ts
프로젝트의 각 각도 요소 (구성 요소, 서비스, 파이프 등)에 대해 생성되는 것으로 나타났습니다 . 주변을 검색했지만 해당 파일의 내용에 대한 설명을 찾지 못했습니다.
이 빌드 파일은 일반적으로 사용할 때 숨겨져 tsc
있습니까? 나는 이름이 잘못 지정된 이름을 변경하고 싶었 기 때문에 궁금 Component
했고 이름 이이 spec.ts
파일 에서 참조되었다는 것을 알았습니다 .
import {
beforeEach,
beforeEachProviders,
describe,
expect,
it,
inject,
} from '@angular/core/testing';
import { ComponentFixture, TestComponentBuilder } from '@angular/compiler/testing';
import { Component } from '@angular/core';
import { By } from '@angular/platform-browser';
import { PovLevelComponent } from './pov-level.component';
describe('Component: PovLevel', () => {
let builder: TestComponentBuilder;
beforeEachProviders(() => [PovLevelComponent]);
beforeEach(inject([TestComponentBuilder], function (tcb: TestComponentBuilder) {
builder = tcb;
}));
it('should inject the component', inject([PovLevelComponent],
(component: PovLevelComponent) => {
expect(component).toBeTruthy();
}));
it('should create the component', inject([], () => {
return builder.createAsync(PovLevelComponentTestController)
.then((fixture: ComponentFixture<any>) => {
let query = fixture.debugElement.query(By.directive(PovLevelComponent));
expect(query).toBeTruthy();
expect(query.componentInstance).toBeTruthy();
});
}));
});
@Component({
selector: 'test',
template: `
<app-pov-level></app-pov-level>
`,
directives: [PovLevelComponent]
})
class PovLevelComponentTestController {
}
답변
스펙 파일은 소스 파일에 대한 단위 테스트입니다. Angular 응용 프로그램의 규칙은 각 .ts 파일에 대해 .spec.ts 파일을 갖는 것입니다. 명령 을 사용할 때 Karma 테스트 러너 ( https://karma-runner.github.io/ )를 통해 Jasmine 자바 스크립트 테스트 프레임 워크를 사용하여 ng test
실행됩니다.
좀 더 읽을 때 이것을 사용할 수 있습니다.
https://angular.io/guide/testing
답변
“ng new”를 사용하여 새 각도 프로젝트를 생성하는 경우 spec.ts 파일 생성을 건너 뛸 수 있습니다. 이를 위해 –skip-tests 옵션을 적용해야합니다.
새로운 ng-app-name –skip-tests
답변
.spec.ts 파일은 개별 구성 요소에 대한 단위 테스트 용입니다. 를 통해 Karma 작업 러너를 실행할 수 있습니다 ng test
. 특정 구성 요소에 대한 단위 테스트 사례의 코드 적용 범위를 보려면ng test --code-coverage
답변
.spec.ts
파일은 unit testing
응용 프로그램에 사용됩니다 .
생성하지 않으면 --spec=false
new을 만드는 동안 사용하십시오 Component
. 이렇게
ng generate component --spec=false mycomponentName