SlideShare uma empresa Scribd logo
Testes em uma aplicação
Angular com Typescript
Filipe M. Silva
@flpms
Github
Twitter
Não fique testando com a testa!
Protege
Esclarece
Revela
Teste unitário
• Teste de uma unidade de código
• Isolado das dependências
• O teste automático não é unitário
TDD e BDD
Esclarecendo as coisas.
1. Escreva seu teste
2. Rode os testes e veja se houveram falhas
3. Escreva o código
4. Rode os testes
5. Refatore o código
6. Começe novamente do 1
TDD
Vantagens
BDD
• A mesma coisa do TDD
#SQN
BDD
• Pode e deve ser usado com TDD
• Mudanças menos dolorosas
• Foco no comportamento
suite('Contador', () => {
test('tick aumenta contador em 1', () => {
let counter = new Counter();
counter.tick();
assert.equal(counter.count, 1);
});
});
TDD
describe('Contador', () => {
it('aumenta o contador em 1 após o tick', () => {
let counter = new Counter();
let expectedCount = counter.count + 1;
counter.tick();
assert.equal(counter.count, expectedCount);
});
});
BDD
BOAS PRÁTICAS
Use describe e it
Organize, atue e cheque || dado, quando, então
Angular
COMPONENTS
isolated
shallow
ISOLATED UNIT TEST
SHALLOW UNIT TEST
Referencias
• https://codeutopia.net/blog/2015/03/01/unit-testing-tdd-and-bdd/
• https://angular.io/docs/ts/latest
• https://medium.com/@PeterNagyJob/angular2-configuration-and-unit-testing-with-mocha-and-
chai-4ada9484e569#.mwzwqmhu5
• http://www.radzen.com/blog/testing-angular-webpack-mocha/
• http://hichambi.github.io/2016/12/27/testing-angular2-with-webpack-mocha-on-browser-and-node.html
• https://codeutopia.net/blog/2017/05/15/quick-javascript-testing-tip-how-to-structure-your-tests/
• https://medium.com/@ana.dvorkina/unit-and-integration-tests-for-angular-components-323a2c681972

Mais conteúdo relacionado

Semelhante a Testes em uma aplicação Angular com Typescript

Unit test & TDD
Unit test & TDDUnit test & TDD
Unit test & TDD
Ricardo Moura
 
TDD - Test Driven Development
TDD - Test Driven DevelopmentTDD - Test Driven Development
TDD - Test Driven Development
Engenharia de Software Ágil
 
Introdução ao Test Driven Development (TDD)
Introdução ao Test Driven Development (TDD)Introdução ao Test Driven Development (TDD)
Introdução ao Test Driven Development (TDD)
Lucas Nery
 
All You Need Is TDD (Português)
All You Need Is TDD (Português)All You Need Is TDD (Português)
All You Need Is TDD (Português)
Huge
 
Desenvolvimento Guiado por Testes
Desenvolvimento Guiado por TestesDesenvolvimento Guiado por Testes
Desenvolvimento Guiado por Testes
elliando dias
 
Clean Code
Clean CodeClean Code
Clean Code
COTIC-PROEG (UFPA)
 
RealDay: Introduction to TDD
RealDay: Introduction to TDDRealDay: Introduction to TDD
RealDay: Introduction to TDD
Miguel Schmitz Grazziotin
 
Por que você não escreve Testes Unitários?
Por que você não escreve Testes Unitários?Por que você não escreve Testes Unitários?
Por que você não escreve Testes Unitários?
Alex Tercete
 
Introdução a TDD
Introdução a TDDIntrodução a TDD
Introdução a TDD
Daniel Sobral
 
Treinamento Testes Unitários - parte 1
Treinamento Testes Unitários - parte 1Treinamento Testes Unitários - parte 1
Treinamento Testes Unitários - parte 1
Diego Pacheco
 
Boas práticas com TDD
Boas práticas com TDD Boas práticas com TDD
Boas práticas com TDD
Camilo Lopes
 
Treinamento TDD - Atech
Treinamento TDD - AtechTreinamento TDD - Atech
Treinamento TDD - Atech
cesarcneto
 
Teste automatizados e tdd
Teste automatizados e tddTeste automatizados e tdd
Teste automatizados e tdd
Luiz Fernando Signorelli
 
Test-Driven Development with PHP
Test-Driven Development with PHPTest-Driven Development with PHP
Test-Driven Development with PHP
Cezar Souza
 
Desenvolvimento orientado a testes - TDD
Desenvolvimento orientado a testes - TDDDesenvolvimento orientado a testes - TDD
Desenvolvimento orientado a testes - TDD
washingtonlslima
 
Por quê você deve utilizar TDD?
Por quê você deve utilizar TDD?Por quê você deve utilizar TDD?
Por quê você deve utilizar TDD?
Wellington Moreira
 
TDD com Código Legado
TDD com Código LegadoTDD com Código Legado
TDD com Código Legado
Cesar Romero
 
JUnit Sample
JUnit SampleJUnit Sample
TDD Desenvolvimento orientado ao teste
TDD Desenvolvimento orientado ao testeTDD Desenvolvimento orientado ao teste
TDD Desenvolvimento orientado ao teste
Rafaela Prado
 
Teste sua aplicação antes que ela teste você
Teste sua aplicação antes que ela teste vocêTeste sua aplicação antes que ela teste você
Teste sua aplicação antes que ela teste você
Tiago Link
 

Semelhante a Testes em uma aplicação Angular com Typescript (20)

Unit test & TDD
Unit test & TDDUnit test & TDD
Unit test & TDD
 
TDD - Test Driven Development
TDD - Test Driven DevelopmentTDD - Test Driven Development
TDD - Test Driven Development
 
Introdução ao Test Driven Development (TDD)
Introdução ao Test Driven Development (TDD)Introdução ao Test Driven Development (TDD)
Introdução ao Test Driven Development (TDD)
 
All You Need Is TDD (Português)
All You Need Is TDD (Português)All You Need Is TDD (Português)
All You Need Is TDD (Português)
 
Desenvolvimento Guiado por Testes
Desenvolvimento Guiado por TestesDesenvolvimento Guiado por Testes
Desenvolvimento Guiado por Testes
 
Clean Code
Clean CodeClean Code
Clean Code
 
RealDay: Introduction to TDD
RealDay: Introduction to TDDRealDay: Introduction to TDD
RealDay: Introduction to TDD
 
Por que você não escreve Testes Unitários?
Por que você não escreve Testes Unitários?Por que você não escreve Testes Unitários?
Por que você não escreve Testes Unitários?
 
Introdução a TDD
Introdução a TDDIntrodução a TDD
Introdução a TDD
 
Treinamento Testes Unitários - parte 1
Treinamento Testes Unitários - parte 1Treinamento Testes Unitários - parte 1
Treinamento Testes Unitários - parte 1
 
Boas práticas com TDD
Boas práticas com TDD Boas práticas com TDD
Boas práticas com TDD
 
Treinamento TDD - Atech
Treinamento TDD - AtechTreinamento TDD - Atech
Treinamento TDD - Atech
 
Teste automatizados e tdd
Teste automatizados e tddTeste automatizados e tdd
Teste automatizados e tdd
 
Test-Driven Development with PHP
Test-Driven Development with PHPTest-Driven Development with PHP
Test-Driven Development with PHP
 
Desenvolvimento orientado a testes - TDD
Desenvolvimento orientado a testes - TDDDesenvolvimento orientado a testes - TDD
Desenvolvimento orientado a testes - TDD
 
Por quê você deve utilizar TDD?
Por quê você deve utilizar TDD?Por quê você deve utilizar TDD?
Por quê você deve utilizar TDD?
 
TDD com Código Legado
TDD com Código LegadoTDD com Código Legado
TDD com Código Legado
 
JUnit Sample
JUnit SampleJUnit Sample
JUnit Sample
 
TDD Desenvolvimento orientado ao teste
TDD Desenvolvimento orientado ao testeTDD Desenvolvimento orientado ao teste
TDD Desenvolvimento orientado ao teste
 
Teste sua aplicação antes que ela teste você
Teste sua aplicação antes que ela teste vocêTeste sua aplicação antes que ela teste você
Teste sua aplicação antes que ela teste você
 

Testes em uma aplicação Angular com Typescript