Buscar

dublesdetestes introducao

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

*
Ismael soares
*
Testes unitários focam 
apenas em uma unidade. 
*
Gasta-se muito tempo criando 
Fixtures que não são o alvo do teste 
*
Posso ganhar agilidade usando Dublês de Testes?
Brilhante!
Use Dublês 
de Testes!!!
*
Os Dublês oferecem uma maneira 
de isolar as dependências 
*
Entrada indireta – dados que a unidade de teste obtém de algum objeto do qual ela depende (atributo de instância, parâmetro, etc).
Saída indireta – resultados esperados da unidade de teste que não podem ser
conferidos apenas pelo valor de retorno. Efeitos colaterais.
*
*
*
Queremos verificar a adição de um produto na nota fiscal.
Suponha que para criar a nota seja obrigatório informar o fornececedor, 
porém ele não será utilizado para exercitar o teste.
*
Usando Stubs para testar Servlets.
Neste teste é ignorado a existência de um container web (Tomcat, por exemplo) 
o objetivo é avaliar o comportamento do servlet
*
*
*
Força um determinado comportamento para tornar possível verificar o tratamento de Exceptions.
*
Captura informações sobre os efeitos colaterais
provocados pela unidade sob teste, para que o
teste verifique se estão corretos.
*
Verificar notificações a observadores
*
Retornos pré-estabelecidos
Verificações de interações
Verifica diretamente os efeitos colaterais
causados pela unidade sob teste
*
Estrito: espera as mesmas chamadas exatamente na
mesma ordem que especificado
Tolerante: aceita qualquer ordem das chamadas,
inclusive com chamadas a mais ou a menos
*
Substitui funcionalidade real por uma
implementação alternativa.
Emulando o comportamento real, com características amigáveis ao teste.
Não é controlado nem observado pelo teste.
*
 Mais exemplos
 Escolhendo entre as diferenças
 Classista ou Mockista?
Ferramentas 
Vantagens
*
*
Links Imagens
http://www.rethinkware.com/download/attachments/557237/testesunitarios.JPG?version=1&modificationDate=1274749852384
http://www.yogodoshi.com/blog/wp-content/uploads/hacker2.jpg
http://3.bp.blogspot.com/__8RKQKezcsk/TQee5_GRrEI/AAAAAAAABtk/-RNZUvv3Boo/s1600/0000+ideia.jpg
http://www.corposaudavel.net/wp-content/uploads/beneficios-laranja.jpg
http://dojofloripa.wordpress.com/2006/10/17/trabalhando-com-stubs/
http://i.s8.com.br/images/sport/cover/img2/21203992_4.jpg
http://www.stanford.edu/group/storytelling/cgi-bin/joomla/images/stories/Impostor.jpg
http://www.mxmasters.com.br/wp-content/uploads/2010/02/falso2.jpg
*
Referências
Artigo do Martin Fowler (Mocks Aren't Stubs)
http://www.infoq.com/br/articles/mocks-Arent-Stubs#4
Curso de verão com Mariana Bravo
http://ccsl.ime.usp.br/agilcoop/files/TestesAutomatizados-3-1-Dubles-AgilCoop-Verao2009.pdf
Livro: xUnit Patterns
http://xunitpatterns.com/Test%20Spy.html
*
*
*
*
*
*

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais