1. FERRAMENTAS CASE DE TESTE
Engenharia de Software OO
Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira – ESOB
2. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
O que é Teste?
“Processo de executar um programa ou sistema com a intenção de
encontrar defeitos (teste negativo).”
(Glen Myers - 1979)
“Testar é verificar se o software está fazendo o que deveria fazer, de acordo
com os seus requisitos, e não está fazendo o que não deveria fazer.”
(Rios e Moreira - 2002)
Visão histórica da execução dos testes:
• Demonstração – década de 70
• Detecção – década de 80/90
• Prevenção – década de 90/00
3. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
Etapas de Teste
Teste unitário: São testes que buscam testar unitariamente cada parte do sistema.
Algumas ferramentas para este tipo de teste:
Java: nUnit, mockito, jBehave, EasyMock, etc.
Ruby: testUnit, rspec, rspec-mocks, steak, shoulda-matchers, etc.
C#: nUnit, Moq, etc.
Teste de Integração: o objetivo é encontrar falhas oriundas da integração interna. Em
geral, os tipos de falhas encontrados são referentes a transmissão de dados.
Teste de Aceitação: são realizados por um grupo de usuários restritos de usuários finais
do sistema, simulando a execução do mesmo na rotina a qual será utilizado, de
modo a verificar se está reagindo de acordo com a solicitação do projeto.
Teste de Sistema: o objetivo do teste, é rodar o sistema na visão de seu usuário final,
sempre em busca de falhas em relação ao objetivo final do projeto.
4. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
Teste V&V
Teste de Validação
• Refere-se a um conjunto de atividades que garante que o software
construído é “rastreável” às exigências do cliente.
• A pergunta que deve ser feita é: "Estamos desenvolvendo o produto
certo?"
• Requer interação com o cliente.
Teste de Verificação
• Refere-se ao conjunto de atividades que garante que o software
implemente corretamente uma função específica.
• A pergunta que deve ser feita é: "Estamos desenvolvendo corretamente o
produto?"
• Requer interação com o software.
5. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
Teste é garantia de qualidade de software?
“A reprodutibilidade dos testes permite simular identicamente e
inúmeras vezes situações específicas, garantindo que passos
importantes não serão ignorados por falha humana e facilitando a
identificação de um possível comportamento não desejado.”
(Bernardo & Kon, 2008)
6. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
Objetivo esperado da utilização das ferramentas de teste
• Redução de envolvimento humano.
• Redução no tempo de testes.
• Maior efetividade no encontro de erros.
• Melhoria na criação de casos de teste
novos e que possam ser reutilizados.
7. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
Divisão das Ferramentas de Teste
8. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
Divisão das Ferramentas de Teste
• Ferramentas de Teste de arquitetura e inspeção: Ferramentas que ajudam a decidir quais
testes precisam ser executados. São Geradores de teste de dados e teste de casos.
• Ferramentas teste de condutores GUI: Ferramentas que automatizam a execução de testes
para produtos com interfaces gráficas.
• Ferramentas de tempo de carregamento e Desempenho(Load/Stress): Ferramentas que se
especializam em colocar uma carregamento pesado sobre os sistemas (especialmente cliente-
servidor).
• Ferramentas de Gestão de Testes: Ferramentas que automatizam a execução de testes de
produtos sem interfaces gráficas de usuário. Também ferramentas que ajudam a trabalhar com
grandes conjuntos de testes.
• Ferramentas de teste de Implementação: Diversas ferramentas que ajudam a implementar
testes.
• Ferramentas de Teste de Avaliação: Ferramentas que ajudam a avaliar a qualidade dos seus
testes. Também são ferramentas de cobertura de código.
• Ferramentas de análise estática: Ferramentas que analisam programas sem executá-los.
Ajudam a testar na fase de codificação.
9. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
O Modelo V
10. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
Ferramentas Case de Teste
11. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
Selenium
“O Selenium é um conjunto de ferramentas Open
Source que também é utilizado na criação de
testes funcionais para aplicações web. Ele
permite a execução de testes em qualquer
navegador e possui suporte para JavaScript,
provendo um rico conjunto de funções
específicas para implementação dos testes”
(Santos & Neto,2009)
12. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
Vantagens e Desvantagens
13. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
Qual teste devo utilizar?
• Caixa-branca, ou teste estrutural, é o teste baseado na analise da
estrutura interna do componente ou sistema.
• Caixa-preta, é a execução de teste, funcional ou não funcional, sem levar
em consideração a estrutura interna do componente ou sistema.
• Teste de regressão é realizado em um programa previamente testado
após alguma modificação feita e com a finalidade de assegurar que defeitos
não tenham sido introduzidos ou mascarados nas áreas não alteradas do
soft
• Teste funcional é baseado em uma análise da especificação de
funcionalidade de um componente ou sistema.
• Teste não funcional testa os atributos de um componente ou sistema que
não se relacionam com a funcionalidade.
14. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
Tipos de Teste: Manual e Automatizado
“O propósito da automação de testes pode ser resumidamente descrito como a
aplicação de estratégias e ferramentas tendo em vista a redução do
envolvimento humano em atividades manuais repetitivas.”
(Cem Kaner, autor do livro "Lessons Learned in Software Testing")
Testes manual Automação de testes
Casos de teste. Scripts de teste.
O que testar? Como automatizar?
Aplicar conhecimentos. Desenvolver conhecimentos.
15. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
O Analista de Teste
Tendências de Mercado
Faltam especialistas em testes que tenham conhecimento
de desenvolvimento. Mas apesar dessa carência, o
mercado encontra-se em expansão. Cada vez mais
empresas se preocupam com a qualidade de seus
sistemas e com isso profissionais especializados em
teste e com conhecimento em ferramentas CASE de
teste, ganham cada vez mais espaço e credibilidade.
16. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
Conclusão
“Quanto mais tarde um defeito for identificado
mais caro ficará para corrigi-lo e mais ainda, os
custos de descobrir e corrigir defeitos no
software aumentam exponencialmente na
proporção que o trabalho evolui através da
fases do projeto de desenvolvimento.”
(Boehm -1976)
17. Sistemas para a Internet – 3º Ciclo 2012
Professor: Sergio Gustavo Medina Pereira - ESOOB
Integrantes:
Beatriz Barbalho Marques 1110083-7
Mariana Silveira Medeiros 1110104-8
Mayra Araújo Maciel da Silva 102108-7
Natália Guimarães dos S. Luna 1110106-6