SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
Testes em uma aplicação
Angular 2 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', function() {
test('tick aumenta contador em 1', function() {
var counter = new Counter();
counter.tick();
assert.equal(counter.count, 1);
});
});
describe('Contador', function() {
it('aumenta o contador em 1 após o tick', function() {
var counter = new Counter();
var expectedCount = counter.count + 1;
counter.tick();
assert.equal(counter.count, expectedCount);
});
});
TDD
BDD
Angular 2
Composição
• Webpack
• Typescript
• Angular-cli
• Karma
• Angular Testing Utilities
• Jasmine
• Protactor
• Babel
• SASS
• Lodash
• Polymer
• etc
Bigland
Typescript
Vamos falar de transpilers e supersets de
Javascript.
Angular-CLI +
Problemas
• Dificuldades em encontrar as dependências corretas
• Dificuldades nas configurações e execução dos testes
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

Mais conteúdo relacionado

Destaque

Amazing Things: Third-Party Python Package Ecosystems
Amazing Things: Third-Party Python Package EcosystemsAmazing Things: Third-Party Python Package Ecosystems
Amazing Things: Third-Party Python Package EcosystemsAudrey Roy
 
Django Package Thunderdome by Audrey Roy & Daniel Greenfeld
Django Package Thunderdome by Audrey Roy & Daniel GreenfeldDjango Package Thunderdome by Audrey Roy & Daniel Greenfeld
Django Package Thunderdome by Audrey Roy & Daniel GreenfeldAudrey Roy
 
Pechakacha presentation powerpoint.pptx
Pechakacha presentation powerpoint.pptxPechakacha presentation powerpoint.pptx
Pechakacha presentation powerpoint.pptxApril Irums
 
Herramientas web 2.0 para pediatras
Herramientas web 2.0 para pediatrasHerramientas web 2.0 para pediatras
Herramientas web 2.0 para pediatrasDavid Pérez Solís
 
3Com 150A0018-02F
3Com 150A0018-02F3Com 150A0018-02F
3Com 150A0018-02Fsavomir
 
Experimental Investigations to Study the Air Flow Patterns on the Headlight D...
Experimental Investigations to Study the Air Flow Patterns on the Headlight D...Experimental Investigations to Study the Air Flow Patterns on the Headlight D...
Experimental Investigations to Study the Air Flow Patterns on the Headlight D...IJERA Editor
 
3Com EXB94V-0
3Com EXB94V-03Com EXB94V-0
3Com EXB94V-0savomir
 
3Com 122-00805-000
3Com 122-00805-0003Com 122-00805-000
3Com 122-00805-000savomir
 
MC_Presentaion_Reem_2B6203
MC_Presentaion_Reem_2B6203MC_Presentaion_Reem_2B6203
MC_Presentaion_Reem_2B6203Reem Al Mutib
 
3Com 1720-310-000-3.00
3Com 1720-310-000-3.003Com 1720-310-000-3.00
3Com 1720-310-000-3.00savomir
 
3Com 3CR990TX95
3Com 3CR990TX953Com 3CR990TX95
3Com 3CR990TX95savomir
 
Diseño Web Centrado En El Usuario
Diseño Web Centrado En El UsuarioDiseño Web Centrado En El Usuario
Diseño Web Centrado En El UsuarioJose Rojas
 

Destaque (17)

Amazing Things: Third-Party Python Package Ecosystems
Amazing Things: Third-Party Python Package EcosystemsAmazing Things: Third-Party Python Package Ecosystems
Amazing Things: Third-Party Python Package Ecosystems
 
Django Package Thunderdome by Audrey Roy & Daniel Greenfeld
Django Package Thunderdome by Audrey Roy & Daniel GreenfeldDjango Package Thunderdome by Audrey Roy & Daniel Greenfeld
Django Package Thunderdome by Audrey Roy & Daniel Greenfeld
 
Pechakacha presentation powerpoint.pptx
Pechakacha presentation powerpoint.pptxPechakacha presentation powerpoint.pptx
Pechakacha presentation powerpoint.pptx
 
Herramientas web 2.0 para pediatras
Herramientas web 2.0 para pediatrasHerramientas web 2.0 para pediatras
Herramientas web 2.0 para pediatras
 
3Com 150A0018-02F
3Com 150A0018-02F3Com 150A0018-02F
3Com 150A0018-02F
 
NOFC
NOFCNOFC
NOFC
 
Experimental Investigations to Study the Air Flow Patterns on the Headlight D...
Experimental Investigations to Study the Air Flow Patterns on the Headlight D...Experimental Investigations to Study the Air Flow Patterns on the Headlight D...
Experimental Investigations to Study the Air Flow Patterns on the Headlight D...
 
Presentation
PresentationPresentation
Presentation
 
3Com EXB94V-0
3Com EXB94V-03Com EXB94V-0
3Com EXB94V-0
 
Periodismo 3.0
Periodismo 3.0 Periodismo 3.0
Periodismo 3.0
 
3Com 122-00805-000
3Com 122-00805-0003Com 122-00805-000
3Com 122-00805-000
 
Ponencia
PonenciaPonencia
Ponencia
 
MC_Presentaion_Reem_2B6203
MC_Presentaion_Reem_2B6203MC_Presentaion_Reem_2B6203
MC_Presentaion_Reem_2B6203
 
3Com 1720-310-000-3.00
3Com 1720-310-000-3.003Com 1720-310-000-3.00
3Com 1720-310-000-3.00
 
Comercio justo esem
Comercio justo esemComercio justo esem
Comercio justo esem
 
3Com 3CR990TX95
3Com 3CR990TX953Com 3CR990TX95
3Com 3CR990TX95
 
Diseño Web Centrado En El Usuario
Diseño Web Centrado En El UsuarioDiseño Web Centrado En El Usuario
Diseño Web Centrado En El Usuario
 

Semelhante a Testes em Angular 2 com Typescript, TDD e BDD

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
 
Test-Driven Development with PHP
Test-Driven Development with PHPTest-Driven Development with PHP
Test-Driven Development with PHPCezar Souza
 
Desenvolvimento Guiado por Testes
Desenvolvimento Guiado por TestesDesenvolvimento Guiado por Testes
Desenvolvimento Guiado por Testeselliando dias
 
TDD com Código Legado
TDD com Código LegadoTDD com Código Legado
TDD com Código LegadoCesar Romero
 
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
 
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
 
Treinamento TDD - Atech
Treinamento TDD - AtechTreinamento TDD - Atech
Treinamento TDD - Atechcesarcneto
 
Testes de unidade - RP Tec Com
Testes de unidade - RP Tec ComTestes de unidade - RP Tec Com
Testes de unidade - RP Tec ComIgor Rozani
 
6. apresentacao rp tec com 2018 igor rozani e felipe muniz
6. apresentacao rp tec com 2018 igor rozani e felipe muniz6. apresentacao rp tec com 2018 igor rozani e felipe muniz
6. apresentacao rp tec com 2018 igor rozani e felipe munizMatheus de Lara Calache
 
Altair Sossai - A Importância de Testes Unitários nas Aplicações
Altair Sossai - A Importância de Testes Unitários nas AplicaçõesAltair Sossai - A Importância de Testes Unitários nas Aplicações
Altair Sossai - A Importância de Testes Unitários nas Aplicaçõesmichel adriano medeiros
 
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
 
Desenvolvimento Orientado a Testes
Desenvolvimento Orientado a TestesDesenvolvimento Orientado a Testes
Desenvolvimento Orientado a TestesAndre Carlucci
 

Semelhante a Testes em Angular 2 com Typescript, TDD e BDD (20)

Unit test & TDD
Unit test & TDDUnit test & TDD
Unit test & 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)
 
Test-Driven Development with PHP
Test-Driven Development with PHPTest-Driven Development with PHP
Test-Driven Development with PHP
 
Desenvolvimento Guiado por Testes
Desenvolvimento Guiado por TestesDesenvolvimento Guiado por Testes
Desenvolvimento Guiado por Testes
 
Clean Code
Clean CodeClean Code
Clean Code
 
TDD - Test Driven Development
TDD - Test Driven DevelopmentTDD - Test Driven Development
TDD - Test Driven Development
 
TDD com Código Legado
TDD com Código LegadoTDD com Código Legado
TDD com Código Legado
 
Teste automatizados e tdd
Teste automatizados e tddTeste automatizados e tdd
Teste automatizados e 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?
 
TesteDeSoftware_WorkshopSINFO2014.pdf
TesteDeSoftware_WorkshopSINFO2014.pdfTesteDeSoftware_WorkshopSINFO2014.pdf
TesteDeSoftware_WorkshopSINFO2014.pdf
 
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ê
 
Treinamento TDD - Atech
Treinamento TDD - AtechTreinamento TDD - Atech
Treinamento TDD - Atech
 
RealDay: Introduction to TDD
RealDay: Introduction to TDDRealDay: Introduction to TDD
RealDay: Introduction to TDD
 
Testes de unidade - RP Tec Com
Testes de unidade - RP Tec ComTestes de unidade - RP Tec Com
Testes de unidade - RP Tec Com
 
6. apresentacao rp tec com 2018 igor rozani e felipe muniz
6. apresentacao rp tec com 2018 igor rozani e felipe muniz6. apresentacao rp tec com 2018 igor rozani e felipe muniz
6. apresentacao rp tec com 2018 igor rozani e felipe muniz
 
Altair Sossai - A Importância de Testes Unitários nas Aplicações
Altair Sossai - A Importância de Testes Unitários nas AplicaçõesAltair Sossai - A Importância de Testes Unitários nas Aplicações
Altair Sossai - A Importância de Testes Unitários nas Aplicações
 
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)
 
Introdução a TDD
Introdução a TDDIntrodução a TDD
Introdução a TDD
 
Desenvolvimento Orientado a Testes
Desenvolvimento Orientado a TestesDesenvolvimento Orientado a Testes
Desenvolvimento Orientado a Testes
 
Refatoração de Código Legado
Refatoração de Código LegadoRefatoração de Código Legado
Refatoração de Código Legado
 

Testes em Angular 2 com Typescript, TDD e BDD