Testes unitários no Angular

Realização de testes unitários em componentes Angular
Voltar

Testes em componentes:

  1. Pré requisitos (Angular): npm install -g @angular/cli
  2. Criação do projeto: ng new teste-unitario-aula
  3. Acessar projeto: cd teste-unitario-aula
  4. Em src/app/, criar diretório '_services'
  5. Criar service calculadora: ng g s _services/calculadora.service
  6. Criar service logger: ng g s _services/logger.service
  7. Programar arquivo de service calculadora --- AQUI ---
  8. Executar testes: ng test

TestBed: prepara módulo de teste para ambiente de teste.

Spy: permite a criação de espiões (spies) para simular comportamentos de objetos durante testes.


Testes em HttpClient:

  1. Testes através de HTTP requests, utilizando API REST pública JSONPlaceholder.
  2. No projeto, gerar arquivo de variáveis de ambiente: ng generate environments
    • Gerará src/environments/environment.ts
  3. Editar arquivos de environments, incluindo variáveis de apiUrl
  4. Em src/app/app.config.ts, configurar provider HttpClient
  5. Gerar service em src/app/_services: ng g s todos.service
  6. Em src/app, criar pasta _models
  7. Em _models, criar model Todo.ts
  8. Em src/app/app.ts, atualizar código do componente
  9. Executar projeto (ng serve) e verificar console
  10. Em src/app/_services/todos.service.spec.ts, implementar testes em requests HTTP
  11. Em src/app.ts, comentar trecho de código (conforme já comentado) e apagar 'implements OnInit'
  12. Executar testes: ng test
  13. Criação de mock:
  14. Na raíz do projeto, criar diretório server, com arquivo 'db-data.ts', informando resultados esperados através dos testes (copiado de https://jsonplaceholder.typicode.com/todos)

Elaborado por Mateus Schwede
ubsocial.github.io