SlideShare uma empresa Scribd logo
1 de 12
Testes baseados em modelos
Andreza Pollyana e Ana Karina
● aumento da complexidade dos sistemas.
● dificuldade da equipe de testes entender o sistema.
● Modelos ajudam a especificar e melhor entender as características e funcionamento do sistema.
● são econômicos.
Porque usar modelos?
Definição e características
● “Testes baseados em modelos é uma técnica de testes em que um modelo do sistema sendo
testado, ou de parte dele, é construído e a partir dele é derivado um conjunto de casos de
testes.”
● São considerados testes de caixa preta
● Em vez de escrevermos os testes manualmente baseados no documento de requisitos, criamos
um modelo do comportamento esperado do sistema que captura os requisitos a serem testados,
então ferramentas são utilizadas para gerar, automaticamente, testes a partir desse modelo
Vantagens
● A geração de testes começa mais cedo no ciclo do desenvolvimento
● Evita ambiguidade que pode estar presente na documentação dos requisitos
● Reduz o tempo dos testes
● Possibilita a construção de várias suites de testes a partir do mesmo modelo mudando apenas o
critério de testes.
● Reduz custos
● Não é necessário conhecimento em programação
O Processo
5 Etapas :
1.Modelagem do sistema
2.Geração de testes abstratos
3.Concretização dos testes
4.Execução dos testes
5.Análise de resultados
5.1 Modelagem do sistema
● Criação do modelo, que será chamado de modelo abstrato pois deve ser menor e mais simples
que o próprio sistema
● Omitir detalhes do sistema
● Conter as saídas esperadas
● Usar ferramentas para verificar a sua consistência
Tipos de modelos
UML - diagrama de atividades
Máquina de estados para máquina de vender
refrigerantes
5.2 Geração de testes abstratos
● Derivados do modelo
● escolher o critério de seleção de testes que determina que testes deverão ser gerados a partir
do modelo.
● Geração de um conjunto de testes abstratos que não são diretamente executáveis devido a
simplicidade do modelo
● A maioria das ferramentas também gera uma matriz de rastreamento de requisitos e outros
relatórios de cobertura.
o A matriz de rastreamento rastreia a ligação entre os requisitos funcionais e os testes
gerados
o Os relatórios de cobertura indicam o quanto do modelo os testes gerados estão, de fato,
testando e podem ser utilizados.
5.3 Concretização dos testes
● Transformar os testes abstratos em testes executáveis,
● Feito por uma ferramenta de transformação que utiliza vários templates e mapeamentos que
traduzem cada caso de testes abstratos em um script de testes executáveis ou escrevendo-se
um código adaptador que realiza esta função.
● O objetivo desta fase é construir uma ligação entre os testes abstratos criados na fase anterior e
o sistema sendo testado.
5.4 Execução dos testes
Os testes podem ser realizados, basicamente de duas maneiras:
● Online
○ As ferramentas de testes se conectam diretamente ao sistema e
○ Testes são feitos dinamicamente, isto é, os testes são executados a medida em que são produzidos
○ A ferramenta de testes gerencia a execução e a gravação dos resultados
● Offline
○ As ferramentas geram casos de testes que podem ser lidos pelo computador e executados automaticamente depois,
o que permite que eles sejam realizados por uma outra plataforma de testes.
5.5 Análise de resultados
● Analisar e realizar as correções se necessárias.
● Para cada falha relatada deve-se determinar a sua causa, que pode se encontrar no sistema,
nos casos de testes aplicados, no modelo ou no adaptado
Exemplo de ferramenta - MaTeLo
● Realiza testes offlines e só funciona no windows
● Adicionar bibliotecas de entrada (resultados das transações) e definir distribuições para essas entradas.
● Adicionar bibliotecas de saída (verificação)
● Simular ações de usuários (transições de estados)
● Verificar se o resultado obtido é igual ao esperado. (pode-se usar funções para sistemas mais complexos)
● Gerenciar requisitos (criando ou exportando) e
liga-los aos casos de testes gerados.
● Criar perfies de Testes
● Checar modelos
● Verificar o caminho de um caso de teste
● Escolher que tipo de algortimo será usado para
a geração de testes
● Gerar os casos de testes

Mais conteúdo relacionado

Mais procurados

Writing test cases from user stories and acceptance criteria
Writing test cases from user stories and acceptance criteria Writing test cases from user stories and acceptance criteria
Writing test cases from user stories and acceptance criteria An Nguyen
 
Istqb 6-테스트도구-2015-배포판
Istqb 6-테스트도구-2015-배포판Istqb 6-테스트도구-2015-배포판
Istqb 6-테스트도구-2015-배포판Jongwon Lee
 
Estratégias de testes em 10 passos, step by step!
Estratégias de testes em 10 passos, step by step!Estratégias de testes em 10 passos, step by step!
Estratégias de testes em 10 passos, step by step!Ariane Izac
 
ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level BasicSelin Gungor
 
Istqb 1-소프트웨어테스팅기초-2015
Istqb 1-소프트웨어테스팅기초-2015Istqb 1-소프트웨어테스팅기초-2015
Istqb 1-소프트웨어테스팅기초-2015Jongwon Lee
 
Варианты использования (use cases) для быстрой оценки проектов
Варианты использования (use cases) для быстрой оценки проектовВарианты использования (use cases) для быстрой оценки проектов
Варианты использования (use cases) для быстрой оценки проектовSQALab
 
Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategytharindakasun
 
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)SangIn Choung
 
발표자료 1인qa로살아남는6가지방법
발표자료 1인qa로살아남는6가지방법발표자료 1인qa로살아남는6가지방법
발표자료 1인qa로살아남는6가지방법SangIn Choung
 
Unit Testing with xUnit.net - Part 2
Unit Testing with xUnit.net - Part 2Unit Testing with xUnit.net - Part 2
Unit Testing with xUnit.net - Part 2BizTalk360
 
Black box techniques
Black box techniquesBlack box techniques
Black box techniquesQA Guards
 
Test Plan Template
Test Plan TemplateTest Plan Template
Test Plan TemplateH2Kinfosys
 
Unit 2 - Test Case Design
Unit 2 - Test Case DesignUnit 2 - Test Case Design
Unit 2 - Test Case DesignSelvi Vts
 

Mais procurados (20)

Writing test cases from user stories and acceptance criteria
Writing test cases from user stories and acceptance criteria Writing test cases from user stories and acceptance criteria
Writing test cases from user stories and acceptance criteria
 
Teste de Software
Teste de SoftwareTeste de Software
Teste de Software
 
Istqb 6-테스트도구-2015-배포판
Istqb 6-테스트도구-2015-배포판Istqb 6-테스트도구-2015-배포판
Istqb 6-테스트도구-2015-배포판
 
Effective Software Test Case Design Approach
Effective Software Test Case Design ApproachEffective Software Test Case Design Approach
Effective Software Test Case Design Approach
 
Estratégias de testes em 10 passos, step by step!
Estratégias de testes em 10 passos, step by step!Estratégias de testes em 10 passos, step by step!
Estratégias de testes em 10 passos, step by step!
 
лекция3 QA
лекция3 QAлекция3 QA
лекция3 QA
 
ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level Basic
 
Istqb 1-소프트웨어테스팅기초-2015
Istqb 1-소프트웨어테스팅기초-2015Istqb 1-소프트웨어테스팅기초-2015
Istqb 1-소프트웨어테스팅기초-2015
 
Варианты использования (use cases) для быстрой оценки проектов
Варианты использования (use cases) для быстрой оценки проектовВарианты использования (use cases) для быстрой оценки проектов
Варианты использования (use cases) для быстрой оценки проектов
 
Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategy
 
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
 
Teste de Software
Teste de SoftwareTeste de Software
Teste de Software
 
발표자료 1인qa로살아남는6가지방법
발표자료 1인qa로살아남는6가지방법발표자료 1인qa로살아남는6가지방법
발표자료 1인qa로살아남는6가지방법
 
Istqb foundation level day 1
Istqb foundation level   day 1Istqb foundation level   day 1
Istqb foundation level day 1
 
Unit Testing with xUnit.net - Part 2
Unit Testing with xUnit.net - Part 2Unit Testing with xUnit.net - Part 2
Unit Testing with xUnit.net - Part 2
 
Black box techniques
Black box techniquesBlack box techniques
Black box techniques
 
Test Plan Template
Test Plan TemplateTest Plan Template
Test Plan Template
 
06 template test plan
06 template test plan06 template test plan
06 template test plan
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
Unit 2 - Test Case Design
Unit 2 - Test Case DesignUnit 2 - Test Case Design
Unit 2 - Test Case Design
 

Destaque

Auto Desenvolvimento Em Empreendedorismo
Auto Desenvolvimento Em EmpreendedorismoAuto Desenvolvimento Em Empreendedorismo
Auto Desenvolvimento Em EmpreendedorismoYour Life do Brasil
 
Teste Dirigido por Modelos
Teste Dirigido por ModelosTeste Dirigido por Modelos
Teste Dirigido por ModelosNatã Melo
 
O quanto as nossas emoções influenciam o nosso corpo
O quanto as nossas emoções influenciam o nosso corpo O quanto as nossas emoções influenciam o nosso corpo
O quanto as nossas emoções influenciam o nosso corpo Anissis Ramos
 
Hipnose dicas, métodos e técnicas
Hipnose   dicas, métodos e técnicas Hipnose   dicas, métodos e técnicas
Hipnose dicas, métodos e técnicas Esdras Cardoso
 
Como despertar Atração
Como despertar AtraçãoComo despertar Atração
Como despertar AtraçãoAlexander Voger
 
Teste emocional, sentimental e psicológico
Teste emocional, sentimental e psicológicoTeste emocional, sentimental e psicológico
Teste emocional, sentimental e psicológicoDiiannaa
 
Gatilhos Mentais: o que são e como aplicar
Gatilhos Mentais: o que são e como aplicarGatilhos Mentais: o que são e como aplicar
Gatilhos Mentais: o que são e como aplicarMateada
 
Manual hipnose completo fabio puentes
Manual hipnose completo fabio puentes Manual hipnose completo fabio puentes
Manual hipnose completo fabio puentes Esdras Cardoso
 
A relação emoção corpo
A relação emoção corpoA relação emoção corpo
A relação emoção corpoDalila Melo
 
Como grandes negociadores usam a linguagem corporal nas negociações
Como grandes negociadores usam a linguagem corporal nas negociaçõesComo grandes negociadores usam a linguagem corporal nas negociações
Como grandes negociadores usam a linguagem corporal nas negociaçõesAgendor
 

Destaque (15)

Auto Desenvolvimento Em Empreendedorismo
Auto Desenvolvimento Em EmpreendedorismoAuto Desenvolvimento Em Empreendedorismo
Auto Desenvolvimento Em Empreendedorismo
 
Teste Dirigido por Modelos
Teste Dirigido por ModelosTeste Dirigido por Modelos
Teste Dirigido por Modelos
 
Auto Hipnose Aula02
Auto Hipnose Aula02Auto Hipnose Aula02
Auto Hipnose Aula02
 
O quanto as nossas emoções influenciam o nosso corpo
O quanto as nossas emoções influenciam o nosso corpo O quanto as nossas emoções influenciam o nosso corpo
O quanto as nossas emoções influenciam o nosso corpo
 
Hipnose dicas, métodos e técnicas
Hipnose   dicas, métodos e técnicas Hipnose   dicas, métodos e técnicas
Hipnose dicas, métodos e técnicas
 
Teste a sua mente
Teste a sua menteTeste a sua mente
Teste a sua mente
 
Como despertar Atração
Como despertar AtraçãoComo despertar Atração
Como despertar Atração
 
Teste emocional, sentimental e psicológico
Teste emocional, sentimental e psicológicoTeste emocional, sentimental e psicológico
Teste emocional, sentimental e psicológico
 
Gatilhos Mentais: o que são e como aplicar
Gatilhos Mentais: o que são e como aplicarGatilhos Mentais: o que são e como aplicar
Gatilhos Mentais: o que são e como aplicar
 
25 maneiras de influenciar pessoas
25 maneiras de influenciar pessoas25 maneiras de influenciar pessoas
25 maneiras de influenciar pessoas
 
Teste da mente
Teste da menteTeste da mente
Teste da mente
 
10 Estratégias de Manipulação
10 Estratégias de Manipulação10 Estratégias de Manipulação
10 Estratégias de Manipulação
 
Manual hipnose completo fabio puentes
Manual hipnose completo fabio puentes Manual hipnose completo fabio puentes
Manual hipnose completo fabio puentes
 
A relação emoção corpo
A relação emoção corpoA relação emoção corpo
A relação emoção corpo
 
Como grandes negociadores usam a linguagem corporal nas negociações
Como grandes negociadores usam a linguagem corporal nas negociaçõesComo grandes negociadores usam a linguagem corporal nas negociações
Como grandes negociadores usam a linguagem corporal nas negociações
 

Semelhante a Testes baseados em modelos: vantagens e processo

GOTEST-Aula3-Automacao-Processo-Testes.pdf
GOTEST-Aula3-Automacao-Processo-Testes.pdfGOTEST-Aula3-Automacao-Processo-Testes.pdf
GOTEST-Aula3-Automacao-Processo-Testes.pdfRodolphoCesar2
 
Testes Funcionais - Unidade IV
Testes Funcionais - Unidade IVTestes Funcionais - Unidade IV
Testes Funcionais - Unidade IVJoão Lourenço
 
Test-Driven Development (TDD) utilizando o framework xUnit.net
Test-Driven Development (TDD) utilizando o framework xUnit.netTest-Driven Development (TDD) utilizando o framework xUnit.net
Test-Driven Development (TDD) utilizando o framework xUnit.netRenato Groff
 
Ciclo de vida de testes implementado v2
Ciclo de vida de testes implementado   v2Ciclo de vida de testes implementado   v2
Ciclo de vida de testes implementado v2douglasdc7m
 
Testes de Unidade com Junit
Testes de Unidade com JunitTestes de Unidade com Junit
Testes de Unidade com Junitcejug
 
Testes unitários x unit
Testes unitários   x unitTestes unitários   x unit
Testes unitários x unitLucas Marques
 
Testes: existe vida antes do TDD
Testes: existe vida antes do TDDTestes: existe vida antes do TDD
Testes: existe vida antes do TDDDiana Ungaro Arnos
 
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...Isaac de Souza
 
Introdução a Programação Orientada a testes
Introdução a Programação Orientada a testesIntrodução a Programação Orientada a testes
Introdução a Programação Orientada a testesAndré Luiz Forchesatto
 
Gerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptxGerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptxRoberto Nunes
 
ybr789try
ybr789tryybr789try
ybr789tryteste
 
Testes de software
Testes de softwareTestes de software
Testes de softwareteste
 
Testes de unidade - RP Tec Com
Testes de unidade - RP Tec ComTestes de unidade - RP Tec Com
Testes de unidade - RP Tec ComIgor Rozani
 
6. apresentacao rp tec com 2018 igor rozani e felipe muniz
6. apresentacao rp tec com 2018 igor rozani e felipe muniz6. apresentacao rp tec com 2018 igor rozani e felipe muniz
6. apresentacao rp tec com 2018 igor rozani e felipe munizMatheus de Lara Calache
 
Android DevConference - Automatizando testes sem sofrimento
Android DevConference - Automatizando testes sem sofrimentoAndroid DevConference - Automatizando testes sem sofrimento
Android DevConference - Automatizando testes sem sofrimentoiMasters
 

Semelhante a Testes baseados em modelos: vantagens e processo (20)

GOTEST-Aula3-Automacao-Processo-Testes.pdf
GOTEST-Aula3-Automacao-Processo-Testes.pdfGOTEST-Aula3-Automacao-Processo-Testes.pdf
GOTEST-Aula3-Automacao-Processo-Testes.pdf
 
Mini aula de teste de software
Mini aula de teste de softwareMini aula de teste de software
Mini aula de teste de software
 
Testes Funcionais - Unidade IV
Testes Funcionais - Unidade IVTestes Funcionais - Unidade IV
Testes Funcionais - Unidade IV
 
Test-Driven Development (TDD) utilizando o framework xUnit.net
Test-Driven Development (TDD) utilizando o framework xUnit.netTest-Driven Development (TDD) utilizando o framework xUnit.net
Test-Driven Development (TDD) utilizando o framework xUnit.net
 
Ciclo de vida de testes implementado v2
Ciclo de vida de testes implementado   v2Ciclo de vida de testes implementado   v2
Ciclo de vida de testes implementado v2
 
Testes de Unidade com Junit
Testes de Unidade com JunitTestes de Unidade com Junit
Testes de Unidade com Junit
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
Testes unitários x unit
Testes unitários   x unitTestes unitários   x unit
Testes unitários x unit
 
Testes: existe vida antes do TDD
Testes: existe vida antes do TDDTestes: existe vida antes do TDD
Testes: existe vida antes do TDD
 
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
 
Introdução a Programação Orientada a testes
Introdução a Programação Orientada a testesIntrodução a Programação Orientada a testes
Introdução a Programação Orientada a testes
 
Eng.ª do Software - 10. Testes de software
Eng.ª do Software - 10. Testes de softwareEng.ª do Software - 10. Testes de software
Eng.ª do Software - 10. Testes de software
 
Overview de QA
Overview de QA Overview de QA
Overview de QA
 
Testes de Software.ppt
Testes de Software.pptTestes de Software.ppt
Testes de Software.ppt
 
Gerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptxGerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptx
 
ybr789try
ybr789tryybr789try
ybr789try
 
Testes de software
Testes de softwareTestes de software
Testes de software
 
Testes de unidade - RP Tec Com
Testes de unidade - RP Tec ComTestes de unidade - RP Tec Com
Testes de unidade - RP Tec Com
 
6. apresentacao rp tec com 2018 igor rozani e felipe muniz
6. apresentacao rp tec com 2018 igor rozani e felipe muniz6. apresentacao rp tec com 2018 igor rozani e felipe muniz
6. apresentacao rp tec com 2018 igor rozani e felipe muniz
 
Android DevConference - Automatizando testes sem sofrimento
Android DevConference - Automatizando testes sem sofrimentoAndroid DevConference - Automatizando testes sem sofrimento
Android DevConference - Automatizando testes sem sofrimento
 

Testes baseados em modelos: vantagens e processo

  • 1. Testes baseados em modelos Andreza Pollyana e Ana Karina
  • 2. ● aumento da complexidade dos sistemas. ● dificuldade da equipe de testes entender o sistema. ● Modelos ajudam a especificar e melhor entender as características e funcionamento do sistema. ● são econômicos. Porque usar modelos?
  • 3. Definição e características ● “Testes baseados em modelos é uma técnica de testes em que um modelo do sistema sendo testado, ou de parte dele, é construído e a partir dele é derivado um conjunto de casos de testes.” ● São considerados testes de caixa preta ● Em vez de escrevermos os testes manualmente baseados no documento de requisitos, criamos um modelo do comportamento esperado do sistema que captura os requisitos a serem testados, então ferramentas são utilizadas para gerar, automaticamente, testes a partir desse modelo
  • 4. Vantagens ● A geração de testes começa mais cedo no ciclo do desenvolvimento ● Evita ambiguidade que pode estar presente na documentação dos requisitos ● Reduz o tempo dos testes ● Possibilita a construção de várias suites de testes a partir do mesmo modelo mudando apenas o critério de testes. ● Reduz custos ● Não é necessário conhecimento em programação
  • 5. O Processo 5 Etapas : 1.Modelagem do sistema 2.Geração de testes abstratos 3.Concretização dos testes 4.Execução dos testes 5.Análise de resultados
  • 6. 5.1 Modelagem do sistema ● Criação do modelo, que será chamado de modelo abstrato pois deve ser menor e mais simples que o próprio sistema ● Omitir detalhes do sistema ● Conter as saídas esperadas ● Usar ferramentas para verificar a sua consistência
  • 7. Tipos de modelos UML - diagrama de atividades Máquina de estados para máquina de vender refrigerantes
  • 8. 5.2 Geração de testes abstratos ● Derivados do modelo ● escolher o critério de seleção de testes que determina que testes deverão ser gerados a partir do modelo. ● Geração de um conjunto de testes abstratos que não são diretamente executáveis devido a simplicidade do modelo ● A maioria das ferramentas também gera uma matriz de rastreamento de requisitos e outros relatórios de cobertura. o A matriz de rastreamento rastreia a ligação entre os requisitos funcionais e os testes gerados o Os relatórios de cobertura indicam o quanto do modelo os testes gerados estão, de fato, testando e podem ser utilizados.
  • 9. 5.3 Concretização dos testes ● Transformar os testes abstratos em testes executáveis, ● Feito por uma ferramenta de transformação que utiliza vários templates e mapeamentos que traduzem cada caso de testes abstratos em um script de testes executáveis ou escrevendo-se um código adaptador que realiza esta função. ● O objetivo desta fase é construir uma ligação entre os testes abstratos criados na fase anterior e o sistema sendo testado.
  • 10. 5.4 Execução dos testes Os testes podem ser realizados, basicamente de duas maneiras: ● Online ○ As ferramentas de testes se conectam diretamente ao sistema e ○ Testes são feitos dinamicamente, isto é, os testes são executados a medida em que são produzidos ○ A ferramenta de testes gerencia a execução e a gravação dos resultados ● Offline ○ As ferramentas geram casos de testes que podem ser lidos pelo computador e executados automaticamente depois, o que permite que eles sejam realizados por uma outra plataforma de testes.
  • 11. 5.5 Análise de resultados ● Analisar e realizar as correções se necessárias. ● Para cada falha relatada deve-se determinar a sua causa, que pode se encontrar no sistema, nos casos de testes aplicados, no modelo ou no adaptado
  • 12. Exemplo de ferramenta - MaTeLo ● Realiza testes offlines e só funciona no windows ● Adicionar bibliotecas de entrada (resultados das transações) e definir distribuições para essas entradas. ● Adicionar bibliotecas de saída (verificação) ● Simular ações de usuários (transições de estados) ● Verificar se o resultado obtido é igual ao esperado. (pode-se usar funções para sistemas mais complexos) ● Gerenciar requisitos (criando ou exportando) e liga-los aos casos de testes gerados. ● Criar perfies de Testes ● Checar modelos ● Verificar o caminho de um caso de teste ● Escolher que tipo de algortimo será usado para a geração de testes ● Gerar os casos de testes