Testes Automatizados de Software

40 %
60 %
Information about Testes Automatizados de Software
Technology

Published on July 1, 2009

Author: mauricioaniche

Source: slideshare.net

Description

Palestra sobre testes automatizados de software, dada no .NET Architects Day 2009, em 27/06/09.

Testes Automatizados de Software Seu software faz realmente o que você quer? Mauricio Aniche mauricio@aniche.com.br

Objetivos • Por quê testar? • Como testar? E o mais importante: MOTIVAR VOCÊ A TESTAR!

test all the f*cking time...

Por quê testar? Prejuízos de aproximadamente $59.5 bilhões na economia dos EUA (Fonte: NIST/2002) É impossível garantir que o software funcione corretamente, sem erros. O cliente não comprou software que falha. PORQUE SIM!

E por que as pessoas não testam? Porque demora! Meu projeto está atrasado! Porque sou programador, e programador não testa! Compilou, tá funcionando! Tá pronto... Só falta testar!

Revisões de código Análises Formais Versões alfa & beta Testes automatizados! “Inspecionar para prevenir defeitos é bom; Inspecionar para encontrar defeitos é desperdício.” Shigeo Shingo

Erro, Defeito Ou Falha?

test all the f*cking time...

Anatomia de um bug Usuário executou um pedaço de código não testado. A ordem em que o usuário executou as ações foram diferentes da ordem em que foi testado. O usuário informou uma combinação de valores de entrada não testados. O ambiente do usuário não foi simulado.

Observando seu sistema... Os usuários enxergam o sistema a partir do exterior... Os testadores espiam um pouco por debaixo dos panos... Os desenvolvedores veem tudo... E você precisa considerar todos esses pontos de vista!

Classificação Caixa branca Caixa preta Caixa cinza

Fases de Teste de unidade de integração de sistema ... diferentes tipos de testes, como aceitação, performance, stress, etc.

Testes de Regressão

Testes Manuais Díficil Demorado e cansativo Executado poucas vezes Cobre poucos casos Sem documentação

Testes Automatizados Rodam rápido Cobrem muitos casos Segurança na manutenção Ajudam na documentação

Muitas vantagens... Eficiência Segurança Flexibilidade Robustez … etc!

test all the f*cking time...

Você consegue ... Simular grandes quantidades de dados ou usuários. Medir o tempo de execução de certas partes do programa. Encontrar gargalos.

Além disso ... Você tem segurança em caso de mudanças. Testes de regressão são executados. Servem de documentação.

Ajuda a codificar? Programe sempre pensando na testabilidade do código. Seu código ganhará em qualidade e flexibilidade!

Facilidade de Manutenção Você pode refatorar sem medo. Adição de novas funcionalidades sem medo de danificar outras partes do sistema. Chega de NÃO ENCOSTA NO QUE ESTÁ FUNCIONANDO!

Reprodutibilidade

test all the f*cking time...

Primeiros passos Código dos testes devem ser simples. Podem conter erros. Devem fazer parte da manutenção. Devem ser independentes. Não devem exigir intervenção humana.

NUnit Framework para testes de unidade. Muito simples de usar. Open source. www.nunit.org

Criando um teste... using NUnit.Framework; [TestFixture] [Test] [SetUp] [TearDown] [Ignore]

Assert’s Assert.AreEqual Assert.AreSame Assert.Greater Assert.IsTrue Assert.IsNull Assert.GreaterOrEqual Assert.IsEmpty ...

Exemplo public class Calculadora { using NUnit.Framework; public int soma(int a, int b) { [TestFixture] return a + b; public class CalculadoraTest { } [Test] public int subtracao(int a, int b) { public void TestaSomaSimples() { return a - b; Calculadora c = new Calculadora(); } Assert.AreEqual(3, c.soma(1,2)); } } [Test] Public void TestaSubtracaoSimples() { Calculadora c = new Calculadora(); Assert.AreEqual(5,c.subtracao(6,1)); } }

Vendo os resultados...

É hora de sujar as mãos!

test all the f*cking time...

Técnicas de Modelagem Partição de Equivalência Análise do Valor Limite Grafo de Causa-Efeito

Mock Objects Simulam objetos reais. Úteis quando temos objetos que são difíceis de criar, reproduzir, lerdos, que ainda não existem, etc. Você pode setar expectativas desse objeto.

Testar sai caro? ... É mais barato do que não testar!

Ferramentas

Testar é legal!

Célebre citação... "The idea of "unit tests" appeals to me only rarely, when I’m feeling my way in a totally unknown environment and need feedback about what works and what doesn’t. Otherwise, lots of time is wasted on activities that I simply never need to perform or even think about. Nothing needs to be "mocked up"." Donald Knuth

Citações "Program testing can be used to show the presence of bugs, but never to show their absence." Edsger W. Dijkstra “Whenever you are tempted to type something into a print statement or a debugger expression, write it as a test instead.” Martin Fowler. “Any program feature without an automated test simply does not exist.” Kent Beck.

TESTE O TEMPO TODO!

Agradecimentos Bryan Liles, por ter me cedido o uso do TATFT. Palestras da Agilcoop.

Bibliografia •Delamaro, et. al. Introdução ao teste de software. Campus. 2007. •Pressman, R.S. “Software Engineering : A Practitioner's Approach”, ed. McGraw-Hill, Science/Engineering/Math, 2006. •Teles, V.M. “Extreme Programming: Aprenda como encantar seus usuários desenvolvendo software com agilidade e alta qualidade”, ed. Novatec, 2004. •Whittaker, J.A. “What Is Software Testing? And Why Is It So Hard? ”. IEEE Software, Jan/Fev 2000, p. 70-79. •Vincenzi, M.R.; Maldonado, J. C.; Delamaro, M. E.; Spoto E. S.; Wong, W. E. •“Software Baseado em Componentes: Uma Revisão sobre Teste”, in: “Desenvolvimento Baseado em Componentes: Conceitos e Técnicas”. ed. Ciência Moderna, 2005. •Myers, Glenford J. The Art of Software Testing. Ed. Wiley, 2004.

Dúvidas? mauricio@aniche.com.br Twitter: @mauricioaniche

Add a comment

Related presentations

Presentación que realice en el Evento Nacional de Gobierno Abierto, realizado los ...

In this presentation we will describe our experience developing with a highly dyna...

Presentation to the LITA Forum 7th November 2014 Albuquerque, NM

Un recorrido por los cambios que nos generará el wearabletech en el futuro

Um paralelo entre as novidades & mercado em Wearable Computing e Tecnologias Assis...

Microsoft finally joins the smartwatch and fitness tracker game by introducing the...

Related pages

Testes automatizados de software: Um guia prático ebook ...

eBook Shop: Testes automatizados de software: Um guia prático als Download. Jetzt eBook herunterladen & bequem mit Ihrem Tablet oder eBook Reader lesen.
Read more

Livro de Testes de Software Automatizados - Casa do Código

Livro de Testes de Software Automatizados ... Conteúdo Quantas vezes você não colocou um "else" a mais ou trocou um maior por maior-igual?
Read more

Testes de Software e Testes de Software Automatizados

Testes de Software, Testes de Software Automatizados, Testes de Performance de Softwares, Testes de Funcionabilidade, Especializações em Testes Software
Read more

Teste automatizado de software (Technology Leadership ...

Isso se aplica bem à área de software se pensarmos que a utilização da ... podemos pensar que testes automatizados são a solução para vários ...
Read more

Testes Automatizados de Software - Um Guia Prático - Casa ...

© Casa do Código. Todos os direitos reservados e protegidos pela Lei nº9.610, de 10/02/1998. Nenhuma parte deste livro poderá ser reproduzida, nem ...
Read more

Automação de teste – Wikipédia, a enciclopédia livre

Automação de teste é o uso de software para controlar a execução do teste de software, a comparação dos resultados esperados com os resultados reais ...
Read more

Automatização de testes | Sofist - Intelligent Software ...

O framework exporta e sincroniza os testes automatizados no sistema de gestão de testes TestLink, ... Outsourcing de testes de software;
Read more

Testes automatizados de software: Um guia prático - Google ...

é novo, sim! é uma transcrição das minhas aulas presenciais sobre testes na caelum. falo de testes de unidade, integração e sistemas. bem prático.
Read more

Testes de automação, Unified Functional Testing, UFT ...

Obtenha softwares de testes automatizados para reduzir os testes manuais e aumentar a automação e a colaboração com o HP UFT, anteriormente conhecido ...
Read more