Ferramentas de Gestão de Testes

10.193 visualizações

Publicada em

Publicada em: Tecnologia
0 comentários
5 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
10.193
No SlideShare
0
A partir de incorporações
0
Número de incorporações
38
Ações
Compartilhamentos
0
Downloads
233
Comentários
0
Gostaram
5
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Ferramentas de Gestão de Testes

  1. 1. Ferramentas de Gestão de Testes Luís Ramos Teste e Qualidade de Software Mestrado em Engenharia Informática Teste e Qualidade de Software 1
  2. 2. Agenda n Ferramentas de Gestão de Testes n Bugzilla Test Runner n Mercury Interactive Test Director n Novo Módulo de Testes da GP do CICA/FEUP • Demonstração MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 2/36
  3. 3. Quality Assurance n diz respeito à verificação de que • os produtos implementam os requisitos base • os processos descritos no plano de desenvolvimento são seguidos n muitas vezes confundida com Gestão de Configurações: • controlo e registo de alterações dos itens de configuração código, documentação, requisitos, problemas, design, etc. MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 3/36
  4. 4. Gestão de Testes n Processo de testar contra requisitos (QA) n Testar software envolve • Processos • Equipas de Teste • Versões de software • Releases • Aplicações • Grupos de scripts • Etc. MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 4/36
  5. 5. Tipos de Abordagem aos Testes n Manual • Definição e entrada de dados manual, normalmente através de um cliente (GUI) • Garantir que todas as combinações são testadas requer conhecimentos do software e muito tempo • Definição e execução manual n Automação via Scripts • Podem ser desenvolvidos scripts usando linguagens de programação standard • Os scripts podem ser usados sistematicamente para variar os dados de entrada para cobertura dos diferentes modos do programa • Execução programática n Capture/Playback • Depende da interacção manual de pessoas para definir os casos de teste • As ferramentas que captam a sequência de acções executadas e as reproduzem posteriormente • Definição manual, execução automática MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 5/36
  6. 6. Tipos de Ferramentas de Testes n Ferramentas de Gestão de Testes • Controlo de versões, gestão de bugs, gestão de scripts de testes, artefactos de planeamento de testes, execuções de testes e resultados dos testes • Testes Manuais e Automáticos n Ferramentas tipo Record/Playback • Captura e reprodução/repetição dos processos gravados n Ferramentas de Testes de Carga (Capacity Testing tools) • Geração de carga e tráfego no sistema n Etc… Aumenta o custo, o tempo dispendido e a qualidade do software MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 6/36
  7. 7. Ferramentas de Gestão de Testes n Ajudam a gerir durante todas as fases de um projecto de desenvolvimento de software • todo o processo de teste de software • todas as fontes de informação relacionada com o esforço de teste n Fases típicas do processo de teste: Planeamento, desenho, implementação, execução, análise e gestão MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 7/36
  8. 8. Ferramentas de Gestão de Testes Funcionalidade típicas n Definir requisitos de testes (test requirements) n Desenvolver planos de testes n Planear execuções de testes n Registar as execuções e os resultados obtidos (diferenças entre resultados obtidos e esperados) n Registar os defeitos encontrados durante a execução dos testes n Prioritizar as execuções dos testes n Associar documentos/templates aos testes n Envio de avisos para responsáveis, testers, etc n Análise da execução de planos de testes • Test the Test – por exemplo, que testes nunca deram origem a bugs? MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 8/36
  9. 9. Ferramentas de Testes Automáticos e Capture/Playback n Ferramentas com testes automáticos podem funcionar como Test Drivers. n Um Test Driver: • lê um ou mais casos de teste de um ficheiro de testes • formata os dados dos casos de testes de acordo com as necessidades do software a ser testado • invoca o software a ser testado com os inputs configurados no ficheiro de testes • Regista o output num ficheiro de log n Ferramentas Capture/Playback • Teste de programas com interfaces interactivas MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 9/36
  10. 10. Plano de Testes – O que é? n Documento que descreve os objectivos, o âmbito, a abordagem, e o enfoque de um esforço de teste de uma aplicação n Permite que pessoas dentro e fora do projecto compreendam o “porquê” e o “como” da validação do produto n Alguns items que um plano de testes deve conter: • Título - Identificação do produto a testar (incluindo número da versão) - Overview do produto • Organização geral do projecto - Documentação relevante (requisitos, arquitectura, outros planos de testes, etc) • Objectivo do esforço de teste - Organização dos testes – Prioridades, âmbito e limitações do plano de testes • Esboço dos testes (abordagem aos testes por tipos de testes, funcionalidade, sistema, modulo, etc.) • Descrição e configuração do ambiente de testes (hardware, sistema operativo, outro software necessário, configuração de dados, etc.) • Análise da validade do ambiente de testes - diferenças entre o ambiente de testes e o ambiente de produção e o seu impacto na validade dos testes • Esboço dos processos de teste e ferramentas a usar para testes e reporte de bugs • Automação dos Testes (justificação e overview) - Test script/test code maintenance processes and version control • Alocação de pessoal • etc… MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 10/36
  11. 11. Casos de Teste – O que é? n Um input, uma acção (ou evento) e uma resposta esperada n Serve para determinar se uma dada funcionalidade de uma aplicação está a funcionar correctamente n Um caso de teste deve conter atributos como: • Identificador, Nome, Objectivo, Pré-condições, Requisitos nos dados de entrada, Passos (ou iterações), Resultados esperados n Oferecem consistência e escalabilidade ao processo de teste n Um bom caso de teste é um caso de teste que encontre problemas n O processo de definição de casos de teste pode ajudar a encontrar problemas nos requisitos ou na arquitectura de uma aplicação n É útil desenhar os casos de teste o mais cedo possível no processo de desenvolvimento MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 11/36
  12. 12. Ferramentas de Gestão de Testes n Comerciais: • Mercury Interactive TestDirector - Quality Center • Compuware QA Director • IBM Rational TestManager n Open Source: • Bugzilla Test Runner • Software Testing Automation Framework (STAF) • Outros: jWebUnit, Bugkilla (Functional testing), JMeter (Performance testing), Bugzilla, Mantis e phpBugTracker (bug-tracking systems). MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 12/36
  13. 13. Bugzilla Test Runner n É um sistema de gestão de casos de teste • add-on over Bugzilla MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 13/36
  14. 14. Bugzilla n Permite aos programadores a manutenção e gestão dos bugs de um produto n Permite registar bugs e mudanças de código, comunicação entre elementos da equipa, submissão e revisão de patches e gestão da QA n Dados: • É a ferramenta open source líder para gestão de bugs • Um dos primeiros produtos “mozilla.org” em 1998, escrito em PERL • Sempre em intenso desenvolvimento, é testado pela Mozilla Foundation n 399 entidades registadas como utilizadores: • Free Software Projects - Mozilla, Linux Kernel, Gnome, KDE, Apache Project, Open Office, etc • Linux Distributions - Red Hat, Mandrake, Gentoo, TurboLinux, etc. • Companies - Ximian, NASA, Id Software IBM, etc (ImagineBroadband...) MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 14/36
  15. 15. Bugzilla Test Runner n Bugzilla Test Runner ajuda a organizar o processo de QA n Funcionalidades gerais: • Definição de planos de teste: um plano de testes deve conter a visão para as actividades de QA que guiam os testers • Definição de Casos de Teste: instruções de como testar uma determinada funcionalidade no sistema e os resultados esperados • Agrupamento dos casos de teste em grupos funcionais • Gestão de execuções de testes: que casos de teste foram executados em determinada versão do produto, quem e quando executou e qual foi o resultado • Ligação de execuções de casos de teste a bugs: identificação de casos de teste que encontram problemas • Outras: pesquisa de casos de teste, import/export testes para HTML MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 15/36
  16. 16. Bugzilla Test Runner - Conclusões n Prós: • Ferramenta com as funcionalidades básicas de gestão de testes • Boa interligação com o bugzilla n Contras: • Péssima interface com o utilizador, dificuldades de navegação • Pobre em termos de análise de testes executados MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 16/36
  17. 17. Bugzilla Test Runner n Home Page: • http://www.willowriver.net/products/testrunner.php n Online demo: • http://testrunner.citat.se/ - user: testrunner@willowriver.net - pwd: testrunner MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 17/36
  18. 18. Mercury Interactive – Quality Center n Mercury Interactive - Quality Center • Test Director • Quick Test Professional • WinRunner n É uma suite de aplicações para testes de software n A ferramenta de gestão de testes é o TestDirector MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 18/36
  19. 19. Mercury Interactive Test Director n É o líder de mercado das ferramentas de gestão de testes n Permite gerir e automatizar todo o processo de QA n Central de testes baseada na web n Grande destaque para o processo de teste: • Metodologia • Estrutura • Organização • Documentação MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 19/36
  20. 20. Test Director – Test Management Process 1. Identificar e definir os Requisitos de Teste • Identificação dos requisitos funcionais e de performance a testar 2. Desenvolver o Plano de Testes • Definir e planear quais os testes a serem executados e como o serão 3. Execução dos Testes • Organizar os grupos de testes, planear a sua execução, executar os testes e analisar os resultados das execuções 4. Registar os defeitos encontrados e monitorar a sua correcção MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 20/36
  21. 21. Test Director - Requirements Management n Definição de requisitos e respectivas propriedades n Definir árvores de Requisitos n Agrupamento de requisitos por grupos funcionais e tipos n Estado dos Requisitos n Alteração dos requisitos (com histórico de alterações) n Anexação de documentos aos requisitos n Envio de dados do requisito por email n Três vista de gestão de requisitos: • document view – lista de requisitos e propriedades • coverage view - testes de cada requisito • coverage/analysis view – execuções de testes de cada requisito MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 21/36
  22. 22. Test Director – Test Plan Development n Definição de planos de teste e respectivas propriedades • a partir de requisitos aprovados 1. Definição da árvore de casos de teste 2. Ligação dos casos de teste aos requisitos (ou o contrário) 3. Definição dos passos de cada caso de teste 4. Construção dos scripts de teste (para os testes automáticos) n os planos de teste devem ser organizados segundo as unidades funcionais da aplicação a testar n relações hierárquicas e de dependência entre testes MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 22/36
  23. 23. Test Director – Test Plan Development n Plano de Teste • descrição geral (é a estratégia de teste para o módulo) • anexação de documentos n Caso de Teste • tipo, nome, descrição, criador, criado em, estado, etc. • os campos obrigatórios de um caso de teste são configuráveis (Administrativamente) • anexação de documentos n Passos/iterações • Nome, descrição, valores de input, acção, resultado esperado, etc. MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 23/36
  24. 24. Test Director – Test Plan Development n Outras funcionalidades: • um dos passos de um teste pode ser outro teste completo • templates de testes - reutilização de testes • permite inserir parâmetros que são configuráveis em cada uma destas chamadas • transformar/associar um teste manual num teste automático • edição do script de teste directamente na ferramenta • definição visual do fluxo de execução de um grupo de testes MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 24/36
  25. 25. Test Director – Test Execution n Definição de Test Sets • conjuntos executáveis de testes de diferentes planos • num test set podemos incluir um ou mais planos de teste ou apenas um ou mais casos de teste de vários planos • propriedades: versão do produto e do browser, notificação por email on fail, anexação de documentos, watchers, etc. n Planeamento de execuções automáticas de testes • Execução directamente na aplicação • Configuração de Reexecução em caso de falha • Configuração de regras de limpeza após execução do teste n Dependências e precedências de passagem • se um dado teste falhar, pode continuar a execução ou não n Registo e análise dos resultados dos testes executados n Visualização e pesquisa de • todas as execuções e resultados dos TestSets • de cada caso de teste • de cada passo dentro de cada teste MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 25/36
  26. 26. Test Director – Test Execution n Gestão visual do fluxo de execução de testes MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 26/36
  27. 27. Test Director – Track Defects n Registo de bugs • Propriedades: reprodutível (Y/N), estado (new, open/reopen, fixed, closed/rejected) • Lista de propriedades configurável pelo administrador n Pesquisa e revisão de bugs n Associação de bugs a testes (ou o contrário) n Controlo de bugs ao longo do seu ciclo de vida n Anexação de documentos MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 27/36
  28. 28. Test Director – Reports & Analysis n Vimos até agora 4 módulos do TestDirector: • Requirements Management • Test Plan Development • Test Execution • Track Defects n Cada um dos 4 módulos anteriores tem uma tab de análise: • Filtragem e organização dos dados para reports e gráficos • Geração de reports e gráficos • Geração de documentação de projecto formatada MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 28/36
  29. 29. Test Director – Reports & Analysis Funcionalidades n Geração de reports configuráveis e filtráveis • Várias templates configuráveis • exemplo: lista de requisitos, lista de testes, traceability matrix n Geração de Gráficos pré-configurados • Gráficos com relações entre dados (configuráveis) • Exemplo: requisitos por autor, definições de testes por autor, execuções de testes por autor, testes por urgência, etc n Exportação para HTML, MsWord, MsExcell (com gráficos e reports incluídos) • Exemplo: report com a execução de um test plan n Importação de dados do MsWord e do MsExcell • mercury add-ins para word e excell (macros) MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 29/36
  30. 30. Test Director – Conclusões n Prós: • Líder do mercado!? (é a mercury que diz) • A importância do processo de teste • Muitas funcionalidades • Muito configurável • Funcionalidades de report extraordinárias n Contras: • Preço MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 30/36
  31. 31. Gestão de Projectos do CICA/FEUP n Problema • Testes em folhas MsExcell - Nenhum planeamento - Nenhuma definição/repetição de testes n Solução • Integração na Gestão de Projectos do CICA - Gestão de Bugs (e parcialmente Controlo de Versões) - Gestão de Requisitos - Gestão de Testes - Gestão de Configurações (para breve!!!) MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 31/36
  32. 32. Módulo de Testes da GP do CICA/FEUP MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 32/36
  33. 33. Módulo de Testes da GP do CICA/FEUP Demo da Gestão de Projectos Módulo de Testes MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 33/36
  34. 34. Referências n opensourcetesting.org n http://www.softwareqatest.com MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 34/36
  35. 35. Questões ? MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 35/36
  36. 36. Fim Obrigado Luís Ramos Teste e Qualidade de Software Mestrado em Engenharia Informática MEI – TQS - Ferramentas de Gestão de Testes Luís Ramos 36/36

×