requirements and test for a better software Palestra automação inteligente em testes de software

Documentos relacionados
Gerenciamento de Serviços de TI ITIL v2 Módulo 1 Conceitos básicos

Sistema de de Bilhetagem Eletrônica MANUAL MÓDULO PDV

PrimeUp Educação. Caso real: implantação de solução de ALM.

Melhoria no Desenvolvimento Ágil com Implantação de Processo de Integração Contínua Multiplataforma para Java e.net. Hudson

Sobre a Prime Control

ESCOLHA UM TESTE PARA EXECUTAR

Rational Quality Manager. Nome: Raphael Castellano Campus: AKXE Matrícula:

Aplicação de Sistema Eletrônico para Planejamento das Etapas de Desenvolvimento de Produtos na Suspensys

SISTEMA DE GESTÃO PARA CURTUMES

Evandro sistemas comerciais e web.

Gerenciamento de software como ativo de automação industrial

SuperStore. Sistema para Automação de Óticas. MANUAL DO USUÁRIO (Módulo Estoque)

Matriz de Cursos. Testes para melhoria da Qualidade dos Sistemas. ATHOS Tecnologia

BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:

Testes de Software. Anne Caroline O. Rocha TesterCertified BSTQB NTI UFPB

O que é o Virto ERP? Onde sua empresa quer chegar? Apresentação. Modelo de funcionamento

ERP Enterprise Resource Planning

O SEBRAE E O QUE ELE PODE FAZER PELO SEU NEGÓCIO

Retorno de Investimento em Testes. Robert Pereira Pinto

DELL POWERVAULT SÉRIE MD ARMAZENAMENTO DE DADOS MODULAR ARMAZENAMENTO DE DADOS DELL POWERVAULT SÉRIE MD

GUIA DE ORIENTAÇÕES ROTEIRO DE CONFIGURAÇÃO DO SOFTWARE CRM PROFESSIONAL ANEXO III ROTEIRO DE CONFIGURAÇÃO - CRM PROFESSIONAL

UMA ABORDAGEM SOBRE TESTES AUTOMATIZADO DE SOFTWARES EM AMBIENTES DE DESENVOLVIMENTO

Controle Patrimonial WEB

GUIA INTEGRA SERVICES E STATUS MONITOR

SISTEMA GERENCIADOR DE PET SHOP

GPEC FORMA Formação & Aperfeiçoamento PRO JURÍDICO XE WEB SOFTWARE WEB PARA ESCRITÓRIOS DE ADVOCACIA

Testes de Software. Por quê testar? 3/28/2011. Andrew Diniz da Costa. Manter alta qualidade. Prevenir e encontrar defeitos

Tecnologia para Ambientes de Saúde

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos

Teste de Software. Objetivos e Limites. Objetivos e Limites. Objetivos e Limites. Objetivos e Limites. Objetivos e Limites

Aprenda as melhores práticas para construir um completo sistema de teste automatizado

Solução Cadia Projects

TESTES AUTOMATIZADOS COM JUNITE MOCKITO

MANUAL DE SUPORTE. Controle de Suporte. Este manual descreve as funcionalidades do controle de suporte.

Charles Sales Bicalho. Orientador: Prof. Dr. Oscar Dalfovo

Engenharia de Software. Apostila I >>> Introdução à ES - HEngholmJr

CONCORRÊNCIA AA Nº 05/2009 BNDES ANEXO X PROJETO BÁSICO: DESCRIÇÃO DOS PROCESSOS DE TI

15/03/2010. Análise por pontos de função. Análise por Pontos de Função. Componentes dos Pontos de Função. Componentes dos Pontos de Função

Tipos de teste de software

Universidade Paulista

Gestão da Tecnologia da Informação

Felipe Denis M. de Oliveira. Fonte: Alice e Carlos Rodrigo (Internet)

a) Teste das funções do sistema com outros sistemas b) Teste de componentes que em conjunto compõem a função do sistema

Análise e Projeto de Sistemas. Engenharia de Software. Análise e Projeto de Sistemas. Contextualização. Perspectiva Histórica. A Evolução do Software

Fundamentos em Teste de Software. Vinicius V. Pessoni

Fábrica de Software.NET

22 DICAS para REDUZIR O TMA DO CALL CENTER. em Clínicas de Imagem

Índice. Manual Backup Online. 03 Capítulo 1: Visão Geral

SISTEMA DE PRODUTOS E SERVIÇOS CERTIFICADOS. MÓDULO DO CERTIFICADOR MANUAL DE OPERAÇÃO Versão 2.4.6

Diretrizes Complementares para Aplicação da Análise de Pontos de Função no PAD

SLA - Service Level Agreement (Acordo de Nível de Serviço) Gerenciamento de Estoque

GARANTIA DA QUALIDADE DE SOFTWARE

Sumário. Vipexpress Plataforma web para intermediação de vendas online entre usuários

MANUAL DE UTILIZAÇÃO - VISÃO DE EMPRESAS. Todos os direitos reservados à Softbox

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

Disciplina: Unidade I: Prof.: Período:

Manual de Utilização

ISO Aécio Costa

PALESTRA. Aplicação da Norma IEEE 829 como Mecanismo de Gerência do Processo de Teste de Produtos de Software. CenPRA

Planejando o aplicativo

automatizar a criação de embalagens

Gerenciamento de Incidentes

Melhores práticas no planejamento de recursos humanos

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ CURSO DE ANÁLISE DE DESENVOLVIMENTO DE SISTEMAS ÉDINA MARIA DAS NEVES

Suporte de alto nível, equipe atualizada e a qualidade dos equipamentos HP.

Engenharia de Software I

FullCopyConvert Data

Borland: Informatizando TI. João Carlos Bolonha

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL

Este tutorial está publicado originalmente em

Grupo LWART: Case de migração JDE 9.0

SISTEMAS DE GESTÃO São Paulo, Janeiro de 2005

Políticas de Qualidade em TI

SuperStore. Sistema para Automação de Óticas. MANUAL DO USUÁRIO (Módulo Vendas e Caixa)

DIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling

Projeto Você pede, eu registro.

OURO MODERNO Editor de textos APOSTILA DE EXEMPLO. (Esta é só uma reprodução parcial do conteúdo)

Software. Gerenciamento de Manutenção

SCIM 1.0. Guia Rápido. Instalando, Parametrizando e Utilizando o Sistema de Controle Interno Municipal. Introdução

Gestão de contratos com métricas de resultado (serviços de software)

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com

Pontos de Função. André Chastel Lima Andréia Ferreira Pinto Diego Souza Campos. Engenharia de Software Mestrado Ciência da Computação - UFMS

Gerenciamento de Mudanças. Treinamento OTRS

CRM. Customer Relationship Management

TRIBUNAL REGIONAL FEDERAL DA 2ª REGIÃO Secretaria de Tecnologia da Informação

Relatório Gerencial. Coordenação de Tecnologia da Informação e Comunicação FUNDEPAG 17/01/2013

Fábrica de Software 29/04/2015

TC CAPA - Corrective Actions & Preventive Actions

PROJETO NOVAS FRONTEIRAS. Descrição dos processos de gerenciamento da qualidade

AUTOMATIZAÇÃO DE PROCESSOS EM APLICAÇÕES DE GESTÃO DE INCIDENTES UTILIZANDO BPMN

FMC: Alinhando Tradição com Inovação através da Integração de Pessoas e Processos com Soluções de TI

Em 2012, a Prosoft planejou o lançamento da Versão 5 dos seus produtos.

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas

Casos de Sucesso. Cliente. Deloitte Touche Tohmatsu Consultores LTDA

Transcrição:

requirements and test for a better software 66 a reunião SPIN Palestra automação inteligente em testes de software

founder & co-director CLICK TO EDIT MASTER TITLE professional em Gestão de STYLE certified requirement engineering Pós graduação projetos Especialista em automação de testes 15 anos em engenharia de testes 10 anos em automação de testes aproximadamente 2 mil treinados em 10 anos otimario@handsonconsulting.com.br

soluções requirement support - Consultoria em elicitação, documentação, validação e gerenciamento de requisitos. test support - Consultoria em Projetos de Testes e Automação de Testes training & mentoring - Engenharia de Testes e - Engenharia de Requisitos software process improvement - Avaliação do Processo de maturidade - Análise de Gap s - Implantação de processos.

Motivação É sabido que o profissional se mantém atualizado e empregável criando tendências e não apenas seguindo-as. Como se posicionar como profissional de testes em um mercado de TI concentrado, comoditizado e, paradoxalmente, ainda sem um bom nível de confiabilidade? Temos que Investir e focar em quê como profissional de Testes?

motivação custo do erro Teste como Quality Control é caro demais e será sempre visto como CU$TO e não como VALOR 2011 State of Requirements Management Report by Jama Software 5k até R$5mil custo de correção de um erro em requisitos por fase de desenvolvimento 1K 2,2K 0,1 0,3 0,7 Se testar pouco a qualidade é baixa, se testar muito o custo é elevado, testar mais ou menos não garante nem alta qualidade e nem custo baixo! fases

Qual o problema com os testes...manuais? Steve Bjoerkman lentos, caros e prende muitos recursos repetitivos, tedioso e frustrantes incompatíveis com ciclos rápidos de desenvolvimento / entrega em produção impraticáveis são necessários!!!

Qual é o desafio? Os produtos cresceram em tamanho e complexidade muito além do que cresceu a sofisticação do processo... Onde você está?

Maturridade do Processo de Testes I II III IV V Mas você está pronto para automatizar? Alta Processo de Testes independente estruturado, com documentação de testes completa e rastreável, uso de indicadores de qualidade Processo de Testes Independente gerenciável com alguma estrutura e alguma documentação de Testes. Há esforço e tentativas no sentido de estruturar o Processo de Teste mas com ciclos não gerenciados de liberação de versões as tarefas de testes parecem sempre estar fora de controle. Há Equipe independente de Testes mas com processo não estruturado, ad hoc e sem documentação de Testes. Não há Equipe de Testes Independente; os testes são ad hoc. Baixa 8

Maturidade do processo de teste melhore o seu processo de testes Equipe independente de teste Requisitos precisos e testáveis Cenários de testes precisos e rastreáveis Processo de testes definido e gerenciável

Automatizar é uma deci$ão de inve$timento! Automação de testes é um projeto de desenvolvimento de software...você obterá nele o mesmo sucesso que obtém na sua fábrica de software atual. Requisitos, Projeto, Desenho, Modelagem, Revisões, Programação, Testes, QA, Controle de Versões, Gestão de Problemas, Mudanças e Configuração, etc. etc. Todos são necessários na Automação dos Testes Já viu este filme antes? Está preparado?

Quanto custa automatizar? 400 350 300 250 200 150 100 50 0 Exemplo: (man) 200 TestCases x 30 = 100hs x 3 Testes + prep (100) = 400hs (aut) 200 TestCases x 01 = 3 hs x 3 Testes + prep (200) = 209hs (-50%) 200 Comparativo Esforço Manual x Automatizado 100 100 100 100 3 3 3 400 209 Preparação Teste #1 Teste#2 Teste #3 Esforço Total Esforço Manual Esforço Aut Para 10 ciclos de testes os testes manuais exigem 1.100hs e os testes automatizados 230 hs (- 80%)

Não esqueça da manutenção! Exemplo: (man) 200 TestCases x 30 = 100hs x 3 Testes + prep (100) = 400hs (aut) 200 TestCases x 01 = 3hs x 3 Testes + prep (320)= 329hs (-17%) 450 400 350 300 250 200 150 100 50 0 200 Comparativo Esforço Manual x Automatizado Exec + manut. 100 100 100 100 43 43 43 400 329 Preparação Teste #1 Teste#2 Teste #3 Esforço Total Esforço Manual Esforço Aut Para 10 ciclos de testes os testes manuais exigem 1200hs e os testes automatizados 630 hs (-48%)

A Solução é Automatizar? A automação de testes pode economizar tempo, acelerar o desenvolvimento, melhorar a qualidade de seus produtos e tornar seus testes mais efetivos... Steve Bjoerkman...ou pode desfocar seu esforço de testes e esbanjar recursos e tempo.

maturidade do processo automação de testes Testar mais = Testes Manuais + Testes Automatizados. AD HOC Automação feita sem compromisso Capture/Replay Execução automática dos testes Sem preocupação com o tamanho do Testware Aproveitamento dos dados de testes Variabilidade Data Driven Testing Testes automatizados testes manuais Keyword Driven Testing Full Regression Planejamento baseados em Requisitos. Ferramentas adequadas ATLM Model Based Testing Geração dinâmica de testes automatizados. >>> Valor Agregado Qualidade construída desde o inicio ESTÁGIO I ESTÁGIO II ESTÁGIO III ESTÁGIO IV ESTÁGIO V

Defina o Ambiente Defina a técnica Defina o Escopo planeje antes o que será automatizado! Escolha os cenários mais utilizado ou mais críticos(aplique o principio do Pareto) Não dê tanta ênfase aos Testes Regressivos Aumente o alcance de seus Testes automatizando múltiplos tipos de testes Ambiente próprio Backup Stubs e Mocks static capture replay data driven testing keyword driven testing model based testing

Testes Unitários Testes Segurnça Testes Funcionais Testes Desempenho escolha a ferramenta adequada aos testes Quick Test Pro Functional Tester Web Testing Selenium Watir Test Complete Load Test Load Runner Performance Tester JMeter Selenium SoapUI JUnit AppScan Nunit Acunetix JMock www.opensourcetesting.org

Static Capture Replay Massas de teste estão hard coded no script Sensível a mudança da Interface do usuário Resultado esperado hard coded Cada teste requer um script Difícil de manter e gerenciar Windows Software em Testes GUI SCRIPT DE TESTE SCRIPT DE TESTE -Interface com o SUT* -Roteiros de Teste -Massas de Teste -Resultados Esperados BD do SUT *System Under Test 17

Data Driven Testing Separa os dados de testes da execução Cada funcionalidade requer um script A lógica de execução hard coded Dificuldade de reuso. Windows Software em Testes BD do SUT GUI SCRIPT DE TESTE SCRIPT DE TESTE -Interface com o SUT -casos de Teste Manipulador de Arquivos Verificador (obtido) 18 Massas de Teste Resultados Esperados 18

Data Driven testing. Os dados podem ser modificados sem a necessidade de alteração dos scripts ID CNPJ Razão Social Produto QTD Valor do Item ICMS Valor da Nota Mensagem 1 06.254.977/0001-05 RealFlex Comercio e industria 100020 10 R$ 150,00 R$ 270,00 R$ 1.770,00 "Inclusão Realizada com sucesso" 2 00.950.123/0001-13 Takura Comercio de Frios Ltda. 10050 150 R$ 12,00 R$ 324,00 R$ 2.124,00 "Inclusão Realizada com sucesso" 3 04.877.111/0001-49 Babel Comercio de Alimentos 100204 0 R$ 140,00 R$ - R$ - "Quantidade do Produto deve ser maior que 0" 4 19.537.121/0001-02 Adriana Flores e Presentes 100300 120 R$ 300,00 R$ 6.480,00 R$ 42.480,00 "Inclusão Realizada com sucesso" 5 05.125.251/0001-07 Mega Cinco Comercio 10202 18 R$ 250,00 R$ 810,00 R$ 5.310,00 "Produto não está cadastrado 19

Keyword driven testing Utiliza palavras chaves (keyword) executar os testes Necessita de um script principal que controla a execução A dependência de Execução é hard coded Diversidade de cenários. Windows Keyword test FrameWork Casos de Teste Software em Testes GUI Script de Teste Massas de Teste BD do SUT Manipulador E/S Resultados Esperados

Keyword driven testing Palavras chaves 21

Model Based Testing Explora a descrição do comportamento do software Necessita de excelentes requisitos Não há dependência na execução Onde estou Ação Onde Vou Baseado em Model-Based Testing: Not for Dummies by Jeff Feldstein

Exmplo model Based Testing Estado Inicial Ação Estado Final HomePage ImageTab ImagePage HomePage Newstab NewsPage ImagePage HomeTab HomePage ImagePage NewsTab NewsPage NewsPage HomeTab HomePage NewsPage ImageTab ImagePage

Iniciar A MENU Opção Mercado Pesquisar Retorno da R1 COMPRA VENDA M AGUARDAR R 1 Com "ATU" MÓDULO PILOTO DE RESERVA Alteração B BOLETAGEM Finalizar Iniciar C ALTERAÇÃO BOLETO Opção Pesquisa Excluir Transferência Localizar Alteração L LOCALIZAR OPERAÇÃO Pré-Liberação Pré-Liberação Opção D SELIC: LBC, LFT, NTND/NBC-E Localização Papel Vendido COMPRAR : LBC, LFT, NTNTD/NBC-E, VENDER : LBC, LFT, NTNTD/NBC-E, Liberar PRÉ- LIBERAÇÃO Pré- Liberar Inciar K LIBERAR TESOURARIA MÓDULO TESOURARIA Papel Comprado Seleção de Estoque para Venda G Seleção do Lastro Comprado Comando Comandar N E TRANSFERÊNCIA PARA CARTEIRA Estoque Comando Lastro Transferir Papel H COMANDO Liberação Liberação Liberação novo Papel se ainda houver Saldo a ser Lastreado Liberação J Comandar LIBERAR GERAL Liquidar I (LOOP) CANCELAMENTO DE LIBERAÇÃO Cancelamento F COMANDO Liberar Z Cancelar Iniciar LIQUIDAÇÃO DE COMPROMISSADA Liberação Iniciar O processo do model based testing Modelo mental Construção do Modelo F I I Vender/Comprar Cliente interno Modelo Explícto SUT : MÓDULO FRONT OFFICE TM : I SIAN Operação Compromissada MÓDULO BACK OFFICE I I Gerar Casos de Teste Roteiros Massas Scripts Objetivos dos Testes Condições de Término Decidir: -gerar mais Casos de Teste -modificar o modelo -parar de testar Estimar: -Confiabilidade -Cobertura -outras métricas Análise dos Dados Evidências dos Testes e Falhas Resultado obtido Resultado esperado Aplicação em Testes Oráculo de Testes

F 25 I Iniciar A MENU Opção VENDA Vender/Comprar Cliente interno Mercado I Pesquisar Retorno da R1 COMPRA M AGUARDAR R 1 Com "ATU" MÓDULO PILOTO DE RESERVA MÓDULO FRONT OFFICE Alteração B BOLETAGEM Finalizar Iniciar C ALTERAÇÃO BOLETO Alteração Opção Excluir Pesquisa Transferência Localizar L LOCALIZAR OPERAÇÃO SUT : SIAN Operação Compromissada Pré-Liberação Pré-Liberação Opção D PRÉ- LIBERAÇÃO Localização Papel Vendido SELIC: LBC, LFT, NTND/NBC-E COMPRAR : LBC, LFT, NTNTD/NBC-E, VENDER : LBC, LFT, NTNTD/NBC-E, I Liberar Pré- Liberar Inciar K LIBERAR TESOURARIA MÓDULO TESOURARIA Papel Comprado Seleção de Estoque para Venda G Seleção do Lastro Comprado Comando N E Comandar TRANSFERÊNCIA PARA CARTEIRA Estoque Comando Lastro Transferir Papel H COMANDO Liberação Liberação Liberação J LIBERAR GERAL MÓDULO BACK OFFICE novo Papel se ainda houver Saldo a ser Lastreado Liberação Liquidar Comandar F COMANDO I (LOOP) CANCELAMENTO DE LIBERAÇÃO Cancelamento Z Iniciar Liberar Cancelar Liberação LIQUIDAÇÃO DE COMPROMISSADA I I Iniciar

Custo de Desenvolvimento Resumo Data Driven KDT MBT $$$$ No médio e longo prazo : CR e DD Portabilidade (KDT e MBT) Capture Replay Conhecimento Técnico

Conclusão Automação de Testes é um Investimento Contínuo e de Médio a Longo Prazo; É um Ciclo de Desenvolvimento paralelo ao seu atual Ciclo de Desenvolvimento Ferramentas são apenas 10% do Investimento. Impacta diretamente o Processo existente de desenvolver Software

Questões Respostas DÚVIDAS???

otimario@handsonconsulting.com.br 55 11 9 9881-9471 a simplicidade é o último grau de sofisticação leonardo da vinci