J'essaie d'ajouter des tests unitaires à mon application Angular 2. Dans l'un de mes composants, il y a un bouton avec une fonction (click)
manipulateur. Lorsque l'utilisateur clique sur le bouton, une fonction est appelée qui est définie dans le fichier .ts
fichier de classe. Cette fonction imprime un message dans la fenêtre console.log indiquant que le bouton a été pressé. Mon code de test actuel teste l'impression de la fonction console.log
message :
describe('Component: ComponentToBeTested', () => {
var component: ComponentToBeTested;
beforeEach(() => {
component = new ComponentToBeTested();
spyOn(console, 'log');
});
it('should call onEditButtonClick() and print console.log', () => {
component.onEditButtonClick();
expect(console.log).toHaveBeenCalledWith('Edit button has been clicked!);
});
});
Cependant, cela ne teste que la classe du contrôleur, pas le HTML. Je ne veux pas seulement tester que la journalisation se produit quand onEditButtonClick
est appelé ; je veux aussi tester que onEditButtonClick
est appelé lorsque l'utilisateur clique sur le bouton de modification défini dans le fichier HTML du composant. Comment puis-je le faire ?