Tester un composant simple
ng g component banniere
create src/app/banniere/banniere.component.css (0 bytes)
create src/app/banniere/banniere.component.html (27 bytes)
create src/app/banniere/banniere.component.spec.ts (642 bytes)
create src/app/banniere/banniere.component.ts (277 bytes)
update src/app/app.module.ts (458 bytes)
<h1>{{titre}}</h1>
import { Component, OnInit } from "@angular/core";
@Component({
selector: "app-banniere",
templateUrl: "./banniere.component.html",
styleUrls: ["./banniere.component.css"]
})
export class BanniereComponent implements OnInit {
titre: string;
constructor() {}
ngOnInit() {
this.titre = "Super titre";
}
}
- Exemple de test vérifiant le titre :
import { async, ComponentFixture, TestBed } from "@angular/core/testing";
import { BanniereComponent } from "./banniere.component";
describe("BanniereComponent", () => {
let component: BanniereComponent;
let fixture: ComponentFixture<BanniereComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [BanniereComponent]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(BanniereComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it("should create", () => {
expect(component).toBeTruthy();
});
it('le titre devrait être "Super Titre"', () => {
const banEl: HTMLElement = fixture.nativeElement;
const h1 = banEl.querySelector("h1");
expect(h1.textContent).toEqual("Super titre");
});
it("le titre est piloté par la propriété titre du composant", () => {
component.titre = "Super titre 2";
fixture.detectChanges();
const banEl: HTMLElement = fixture.nativeElement;
const h1 = banEl.querySelector("h1");
expect(h1.textContent).toEqual("Super titre 2");
});
});
- Vérifier que tous les tests sont passants.