testes componentizados: como esta técnica pode aumentar a produtividade
TRANSCRIPT
TESTADORES 2015
TESTADORES 2015
Testes Componentizados: Como esta Técnica pode Aumentar a Produtividade
Marcelo Galvão
TESTADORES 2015
Marcelo Galvão
• Formado em Economia
• Mais de 25 anos de experiência na TI, boa parte deles voltados ao desenvolvimento de aplicações
• Responsável na HP pelas ferramentas que suportam o processo de desenvolvimento e qualidade de software
• Certificações CSM, CTAL-TA/ISTQB e ITIL v3
TESTADORES 2015
Testes Componentizados
• Quais são os desafios
• Como funciona
• Demonstração
• Perguntas
TESTADORES 2015
PRODUÇÃO
CODIFICAÇÃO
INÍCIO DO PROJETO
DEMANDAS DE MARKETING
DEMANDAS DE NEGÓCIO
Análise deRequisitos
Especificação de Requisitos
Especificação de Arquitetura
Especificação de Sistema
Especificação de integração de Componentes
Especificação de Componentes
Validação deRequisitos
Planejamento do
Planejamento dosTestes integrados de sist.
Planejamento dos Testes de sistema
Planejamento dos Testes de integração
Planejamento dos Testes de comp.
Testes de performance,
carga, stress e segurança
Testes de aceitaçãoUsuário
Testes de integração de Sistemas
Testes de sistema
Testes deintegração.
Testes de Comp.
Teste de aceitação
Modelo em V
TESTADORES 2015
Quais são os desafios
Pensando em Testes de Sistema e de Aceitação do Usuário, normalmente …
• Os usuários são envolvidos apenas no final
• Não há documentação sobre os requisitos, casos de uso, casos de testes, relatórios e evidências de execuções dos testes, defeitos, etc
• Quando existem informações elas não são rastreáveis
• A maior parte dos testes são manuais!
TESTADORES 2015
E se …
• Fosse possível componentizar os testes?
– “dividir para conquistar”
• Fosse possível reutilizá-los?
– "não reinvente a roda, reaproveite"
TESTADORES 2015
Engenharia de Software Baseada em componentes é um ramo de Engenharia de Software, com ênfase na decomposição dos sistemas, em componentes funcionais e lógicos com interfaces bem definidas, usadas para comunicação entre os próprios componentes.
Componentes são considerados como estando num nível de abstração mais alto do que Objetos e, como tal, não compartilham estado e comunicam-se por troca de mensagens contendo dados.
http://pt.wikipedia.org/wiki/Engenharia_de_software_baseada_em_componentes
O que é um componente
TESTADORES 2015
Teste Manual
AutomaçãoTradicional
Componentes(Manual e
automatizado)
Fim do projetoInício do projeto Aplicação disponível
Documentação dos casos de teste
Execução e análise dos testes Alteração dos testes
Documentação dos casos de teste
Gravação do testesExecuçãoe análise
dos testes
Modify testsAlteração dos testes
Criação dos fluxos e dos
componentes
Execução manualAlteraçãodos testes
Automação AutomateExec automatizada
Manual vs Automação vs Componentes
TESTADORES 2015
Número dafatura
(via webservice)
Rejeitaro pedido
30 DDPSem cond pagto
Em dinheiro
Ajuste no estoque
Item
Informaçõesfinanceiras
Informaçõesdo cliente
Processode envio
EnvioRegistroContábil
LoginExample de um
fluxo de teste
Pedido de Compra
Exemplo de um processo de negócio
TESTADORES 2015
Apagar o pedidode compra
Apagaro pedido
Procuraro pedido
Login
Logout
Visualizaro pedido
Criar o pedidode compra
Criar o pedido
Visualizaro pedido
Login
Logout
Atualizar o pedidode compra
Atualizaro pedido
Login
Logout
Visualizaro pedido
Procuraro pedido
Onde está o problema?
TESTADORES 2015
Criar o pedido
Visualizaro pedidoLogin Logout
Apagaro pedido
Procuraro pedido
Atualizaro pedido
Apagar o pedido Atualizar o pedidoCriar o pedido
Dados para teste
Reduz o tempo de criação e manutençãodos testes em 50% ou mais
Componentize e reutilize!
TESTADORES 2015
Analista de NegóciosAnalista de Testes
Define oscomponentes de teste
Publica os componentes e ostestes dos processos de negócio
Executa os testes (UAT)
Define os processos de negócios
Define as condições de testes
Define os Testes dos Processos de Negócio
Implementa os componentesde teste do negócio(manuais/autom)
Foco em produtividade
Executa os testes (testes de Sistema e de integração)
TESTADORES 2015
What is Business Process Modeling?
• Parte do ciclo de vida do gerenciamento dos processos
de negócio
• Representação gráfica e simples, para avaliar e otimizar
processos
• Ajuda na documentação
• Gerenciado pelos Analistas de Negócios
• Ferramentas de modelagem
(Aris, Provision, BizAgi, etc))
O que é Modelagem de Processo de Negócio
TESTADORES 2015
Requisitos de Negócio
Teste
Teste
Teste
Requisitos de Segurança
Teste
Defeito
Defeito
Defeito
Defeito
Processos de Negocio
Requisitos de teste
Processos de Negocio
Processos de Negocio
Rastreabilidade
TESTADORES 2015
Visão da HP
HP BPT – Business Process TestingFramework que implementa o conceito da componentizaçãopara casos de testes manuais e automatizados.
Benefícios:- Ajuda no planejamento dos testes- Acelera a execução- Aumenta a colaboração- Reduz o esforço de manutenção dos casos de testes- Integra os casos de testes manuais e automatizados- Ajuda a manter a documentação dos artefatos e suas
dependências
TESTADORES 2015
Perguntas?
Marcelo Galvão
https://br.linkedin.com/in/marcelogalvao1
Twitter @mgalvao1970
Obrigado!
http://www.hp.com/go/bpt