ferramenta para planejamento e controle de testes de...

40
FERRAMENTA PARA FERRAMENTA PARA PLANEJAMENTO E CONTROLE PLANEJAMENTO E CONTROLE UNIVERSIDADE REGIONAL DE BLUMENAU CURSO DE SISTEMAS DE INFORMAÇÃO - BACHARELADO PLANEJAMENTO E CONTROLE PLANEJAMENTO E CONTROLE DE TESTES DE TESTES - SISCONTROLTEST SISCONTROLTEST Eduardo Cesar Eberle Prof. Wilson Pedro Carli, Orientador

Upload: truongkhuong

Post on 21-Aug-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

FERRAMENTA PARA FERRAMENTA PARA PLANEJAMENTO E CONTROLE PLANEJAMENTO E CONTROLE

UNIVERSIDADE REGIONAL DE BLUMENAUCURSO DE SISTEMAS DE INFORMAÇÃO - BACHARELADO

PLANEJAMENTO E CONTROLE PLANEJAMENTO E CONTROLE DE TESTES DE TESTES -- SISCONTROLTESTSISCONTROLTEST

Eduardo Cesar Eberle

Prof. Wilson Pedro Carli, Orientador

RoteiroRoteiro• Introdução• Objetivos• Fundamentação teórica• Sistema atual• Trabalhos correlatos• Desenvolvimento e Especificação do sistema• Desenvolvimento e Especificação do sistema• Técnicas e Ferramentas utilizadas• Operacionalidade• Resultados e Discussões• Conclusão• Extensão• Demonstração do sistema

IntroduçãoIntrodução

• Reconhecimento de empresário para investir em qualidade de software;

• Processo de planejamento;• Controle de testes são procedimentos;• Gerência de Testes;• Gerência de Testes;• Atividade de teste de software recebendo uma

maior atenção das empresas de desenvolvimento.

ObjetivosObjetivos

Consiste em apresentar uma ferramenta que auxilie o gestor de qualidade no gerenciamento de testes.

Os objetivos específicos do trabalho são:

• permitir ao gestor de qualidade gerenciar os processos de testes internos;testes internos;

• disponibilizar interface web aos analistas de testes para o acompanhamento dos processos de testes vinculados aos cenários de testes;

• armazenar os históricos de execuções de testes;• manter as informações sobre os planos de testes;• guardar as informações sobre os casos de testes;• integrar a ferramenta desenvolvida com a ferramenta

TestComplete.

Fundamentação teóricaFundamentação teórica

Planejamento de Testes

Planejamento de testes é um processo e plano de teste é o resultado prático desse planejamento que é seu fruto e artefato (MOLINARI, 2003). fruto e artefato (MOLINARI, 2003).

Através de um planejamento detalhado de todas as fases a serem executadas durante o processo de teste, obtêm-se resultados mais confiáveis, impactando diretamente em um produto melhor testado e de melhor qualidade (INTHURN, 2001).

Fundamentação teóricaFundamentação teórica

Controle de Cenários

O controle dos testes é responsável por garantir que as informações e atividades descritas durante o planejamento sejam realizadas conforme o planejado, em caso de mudanças, que elas sejam relatadas às planejamento sejam realizadas conforme o planejado, em caso de mudanças, que elas sejam relatadas às pessoas envolvidas nas atividades de teste. O controle dos testes também é responsável pelo registro dos eventos e incidentes ocorridos durante os testes e, com isso, possibilita a re-execução dos testes após modificações no produto (DIAS NETO, 2006).

Fundamentação teóricaFundamentação teórica

Casos de Testes

Segundo Rios e Moreira Filho (2006), a partir do objeto (ou parte do sistema) definido no plano de teste devem ser elaborados os casos de testes. O caso de teste desce ao nível de detalhe de campos de devem ser elaborados os casos de testes. O caso de teste desce ao nível de detalhe de campos de formulários, arquivos, telas, páginas e outros. Desta forma, cada item de teste deve ter um critério de avaliação e de teste. Deve também ser identificado o plano de testes que deu origem a cada caso de teste.

Fundamentação teóricaFundamentação teórica

Padrão de documentação IEEE 829

Um plano de testes da IEEE-829 deve conter em seu padrão campos como o identificador, a introdução, os itens de testes, as funcionalidades a serem testadas, as funcionalidades a não serem testadas, a abordagem de itens de testes, as funcionalidades a serem testadas, as funcionalidades a não serem testadas, a abordagem de teste, os critérios de término dos testes, os critérios de suspensão dos testes, as entregas, as tarefas, os ambientes, as responsabilidades, os treinamentos, o cronograma, os riscos e as aprovações (RIOS, 2007).

Fundamentação teóricaFundamentação teórica

Melhoria de Processo de Teste Brasileiro (MPT.BR)

O MPT.Br é um modelo para Melhoria do Processo de Teste concebida para apoiar as organizações através dos elementos essenciais para o desenvolvimento da disciplina de teste no processo de desenvolvimento de dos elementos essenciais para o desenvolvimento da disciplina de teste no processo de desenvolvimento de software (ASSOCIAÇÃO PARA PROMOÇÃO DA EXCELÊNCIA DO SOFTWARE BRASILEIRO, 2010a).

Fundamentação teóricaFundamentação teórica

Ferramenta TestComplete

Uma ferramenta de automação é essencial para que os testes funcionais e de regressão possam ser feitos com eficiência e eficácia (RIOS; MOREIRA, 2006). eficiência e eficácia (RIOS; MOREIRA, 2006).

Sistema atualSistema atual

Problemas

• Não conta com nenhum controle contendo uma referência sobre quais casos foram automatizados sobre casos documentados;sobre casos documentados;

• Documentações de casos de testes separados da automatização em servidores;

• Controle de testes de funcionalidades e processos automatizados são inseridos em planilhas excelsendo alocado em servidores para atualizações de novas funcionalidades.

Sistema atualSistema atual

Controle de cenários

Trabalhos correlatosTrabalhos correlatos

Bonecher (2008) - A ferramenta desenvolvida visa auxiliar no planejamento e controle de testes de integração.

Trabalhos correlatosTrabalhos correlatos

Labes (2010) - A ferramenta foi desenvolvida para auxiliar os processos de testes como recursos, casos de testes e apoiar as atividades gerenciais da área de qualidade da empresa.

Trabalhos correlatosTrabalhos correlatos

Amorim (2011) - Apresenta a ferramenta que foi desenvolvida no estudo sobre do modelo Melhoria de Processos de Testes Brasileiros (MPT.BR) baseando-se em processos de outros modelos como CapabilityMaturity Model Integration (CMMI) e Melhoria de Processos de Software (MPS.BR) voltado para o processo de teste.

Trabalhos correlatosTrabalhos correlatos

Bertolini (2014) - É uma extensão da ferramenta desenvolvida por Amorim (2011). Em forma de plug-in para o Eclipse, a ferramenta ajuda na gerência de projetos de teste aderentes ao MPT.BR versão 3.1, através da automatização de algumas áreas dos três níveis do processo pesquisado.

Desenvolvimento e Especificação do sistemaDesenvolvimento e Especificação do sistema

Requisitos funcionais

Desenvolvimento e Especificação do sistemaDesenvolvimento e Especificação do sistema

Requisitos funcionais

Desenvolvimento e Especificação do sistemaDesenvolvimento e Especificação do sistema

Requisitos não funcionais

Desenvolvimento e Especificação do sistemaDesenvolvimento e Especificação do sistema

Regras de negócio

Desenvolvimento e Especificação do sistemaDesenvolvimento e Especificação do sistema

Diagrama de Caso de Uso

Desenvolvimento e Especificação do sistemaDesenvolvimento e Especificação do sistema

Diagrama de Atividades

Desenvolvimento e Especificação do sistemaDesenvolvimento e Especificação do sistema

MER

Técnicas e Ferramentas utilizadasTécnicas e Ferramentas utilizadas

Para o desenvolvimento da ferramenta SisControlTest foi utilizada o Visual Studio 2013 para o auxílio do desenvolvimento, também utilizando como padrão a arquitetura Model View Controller (MVC) do ASP.NET como framework e utilizando-se das principais tecnologias do .NET Framework, também utilizando o Entity Framework para manipulação de dados no banco gerando as tabelas através das classes da ferramenta.da ferramenta.

Técnicas e Ferramentas utilizadasTécnicas e Ferramentas utilizadas

Para o desenvolvimento da interface foram utilizados os componentes do Twitter Bootstrap sendo mais rápido para o desenvolvimento web, podendo utilizar estilos CSS já configurados e tendo compatibilidade com qualquer navegador.

Técnicas e Ferramentas utilizadasTécnicas e Ferramentas utilizadas

Ferramenta subdividida em duas classes, ConexaoDB onde temos estrutura de conexão com suas classes da ferramenta e IntegracaoTestComplete onde foi implementado as rotinas de execução do TestComplete.

Técnicas e Ferramentas utilizadasTécnicas e Ferramentas utilizadas

Na classe IntegracaoTestComplete em suas referências são integradas a biblioteca do TestComplete e suas DLL necessárias para realizar o disparo das rotinas.

Técnicas e Ferramentas utilizadasTécnicas e Ferramentas utilizadas

Relatórios das ferramenta são gerados através de uma biblioteca chamada rotativa.

Rotativa é uma biblioteca baseada no executável wkhtmltopdf que converte HTML para PDF, usando o motor WebKit usado pelos navegadores Chrome e wkhtmltopdf que converte HTML para PDF, usando o motor WebKit usado pelos navegadores Chrome e Safari (FERRARI, 2014).

OperacionalidadeOperacionalidade

Tela de login

OperacionalidadeOperacionalidade

Tela inicial

OperacionalidadeOperacionalidade

Tela gerência de acesso

OperacionalidadeOperacionalidade

Tela cadastro de configuração

OperacionalidadeOperacionalidade

Tela cadastro de plano de teste

OperacionalidadeOperacionalidade

Tela cadastro de caso de teste

OperacionalidadeOperacionalidade

Tela impressão de caso de teste

OperacionalidadeOperacionalidade

Tela logs de execução

Resultados e DiscussõesResultados e Discussões

• Facilidade de acesso a logs de execução e cadastros do processo do teste;

• Semelhança com trabalhos correlatos;• Maior visão sobre controle de testes;• Facilitar o controle de cenários automatizados • Facilitar o controle de cenários automatizados

ligados aos casos de testes documentados.

ConclusãoConclusão

• Processo de testes interno da empresa automatizado;

• Associação de dados dos documentos de testes ao testes automatizados;

• Muito tempo gasto na interface com interação com a parte lógica da ferramenta;

• Muito tempo gasto na interface com interação com a parte lógica da ferramenta;

• Atendeu as expectativas.

ExtensãoExtensão

• Controle sobre codificação de cenários de testes futuros;

• Gráfico de desempenho sobre analista de teste sobre os casos de testes implementados e tempo;

• Correlacionamento com outra ferramenta externa para vinculação de bugs;

• Correlacionamento com outra ferramenta externa para vinculação de bugs;

• Controle de versão do produto correlacionando-se coma ferramenta;

• Módulo de gráficos sobre as execuções de cenários dos produtos.

Demonstração do sistema!Demonstração do sistema!