SlideShare uma empresa Scribd logo
Testes Funcionais e Estruturais utilizando Selenium IDE e Cobertura
• De acordo com PRESSMAN:
   – Todos os testes devem estar relacionados aos requisitos do cliente (p.
     93).
   – Teste é um conjunto de atividades que podem ser planejadas
     antecipadamente e conduzidas sistematicamente (p. 262).
• Planejamento de Casos de Teste?
• Série de Testes:
   –   Alfa e Beta
   –   Integração
   –   Regressão
   –   Sistema
   –   Unidade
   –   Validação
   –   Fumaça


                                                                              2
• Segundo PRESSMAN (p. 316):
   – Operabilidade: Quanto melhor funciona, mas eficientemente pode ser
     testado.

   – Observabilidade: O que você vê, é o que você testa.

   – Controlabilidade: Quando melhor você controlar o software, mais o
     teste pode ser automatizado e otimizado.

   – Decomponibilidade: Controlando o escopo do teste, podemos isolar
     problemas mais rapidamente e realizar retestagem mais
     racionalmente.

   – Simplicidade: Quanto menos houver a testar, mais rapidamente
     podemos testar.

   – Estabilidade: Quanto menos modificações, menos interrupções no
     teste.                                                              3
• Também chamado de “teste caixa preta” ou
  teste comportamental (PRESSMAN, p. 327).
  – Focaliza os requisitos funcionais do software.
  – Abordagem complementar a “caixa branca”,
    buscando os erros:
     •   Erros de Interface.
     •   Funções incorretas ou omitidas.
     •   Erros de comportamento o desempenho.
     •   Erros de Estrutura de Dados ou acesso a Banco de
         Dados.
                                                            4
• Ferramenta para gravação, construção, edição e
  execução de testes, onde a reprodução dos testes é
  realizada no ambiente real da aplicação.
   – Extensão do Mozilla Firefox
   – Onde obter? http://seleniumhq.org/projects/ide
   – Dica: instalar também a extensão “Page Coverage”
      • Para tirar “prints” das interfaces testadas.




                                                        5
6
• Construção:
  – Passo a passo
  – Gravação do teste
     • Gravação dos “prints” das telas testadas




• Execução:
  – A partir de teste salvo previamente
  – Após a construção.

                                                  7
8
• Também chamado de “teste caixa branca” ou
  teste lógico (PRESSMAN, p. 318).
  – Usa a estrutura de controle para realizar os testes
    (código fonte).
  – Buscando os erros:
     • Todos os caminhos lógicos serão exercitados, nos lados
       verdadeiro e falso.
     • Execução de todos os ciclos, dentro limites e bis
       intervalos estabelecidos.
     • Exercício das estruturas de dados internas para garantir
       validade.
                                                              9
10
• É uma ferramenta “free” para calcular a porcentagem de
  código Java acessado pelos testes.
   – Pode ser executado via Ant ou linha de comando.
   – Instrumentação da Java Bytecode.
   – Geração de relatórios em HTML (ou XML, para o
     Hudson!)
   – Onde Obter?
     http://cobertura.sourceforge.net/index.html



                                                       11
Instrumentação das Classes                     Geração de Relatórios
• cobertura-instrument.bat                  • cobertura-report.bat
Parâmetro:      Descrição:                   Parâmetro:      Descrição:
--basedir       Diretório onde estão as      --basedir       Diretório onde estão as
                classes que você vai                         classes que você vai
                instrumentar.                                instrumentar.
--datafile      Diretório que vai conter     --datafile      Diretório que vai conter
                o “cobertura.ser”                            o “cobertura.ser”
--destination   Diretório das classes        --destination   Diretório das classes
                instrumentadas                               instrumentadas
--ignore        Expressão regular para       --format        HTML ou XML
                ignorar linhas de código.    --ignore        Expressão regular para
                                                             ignorar linhas de código.
                                                                                    12
– Integração com o NetBeans
  • project.properties
  • Automação no Ant (Build.xml)
     –   Instrumentação.
     –   Geração de Relatórios.
     –   Como rodar a geração do relatório? Executar tarefas do Ant.
     –   Como fazer? Quais as Instruções? Arquivo em anexo.




                                                                       13
14
15
• PRESSMAN, R. S. Engenharia de Software. São Paulo:
  McGraw-Hill, 2006.
• Selenium Team. Selenium IDE Project. Disponível em:
  <http://seleniumhq.org/projects/ide>. Acesso em 06 jun.
  2012.
• Cobertura Team. Cobertura. Disponível em: <
  http://cobertura.sourceforge.net/index.html>. Acesso em 10
  jun. 2012.
• NetBeans. Cobertura – NetBeans Wiki. Disponível em: <
  http://wiki.netbeans.org/Cobertura >. Acesso em 12 jun.
  2012.

                                                               16

Mais conteúdo relacionado

DOCX
Календарне планування уроків читання і письма за комплектом з навчання грамот...
PPT
Say sistemi
PDF
Урок 3. Апаратна і програмна складові інформаційної системи. Комп'ютер як при...
PPT
пристрої введення та виведення інформації
PPT
Вивчаємо мову програмування Lazarus
PPTX
Buttons on forms and surveys: a look at some research 2012
DOCX
Підсумковий урок з інформатики_презентація.docx
PPTX
Curso Treinamento Automação de testes com Selenium Qualister
Календарне планування уроків читання і письма за комплектом з навчання грамот...
Say sistemi
Урок 3. Апаратна і програмна складові інформаційної системи. Комп'ютер як при...
пристрої введення та виведення інформації
Вивчаємо мову програмування Lazarus
Buttons on forms and surveys: a look at some research 2012
Підсумковий урок з інформатики_презентація.docx
Curso Treinamento Automação de testes com Selenium Qualister

Semelhante a Testes Funcionais e Estruturais utilizando Selenium IDE e Cobertura (20)

PPTX
Introdução a testes automatizados
PPTX
[DevOps Carioca] Testes Automatizados
PDF
sfCon 2012 - Conceitos de Engenharia Reversa aplicados na migração de sistema...
PDF
Palestra - Symfony Framework MVC PHP 5
PPTX
Python Brasil 2020 - Desmitificando pipeline de dados com Python: o que apren...
ODP
Introdução ao framework CodeIgniter
PPTX
ASP.Net Performance – A pragmatic approach - Luis Paulino
PPT
Metodologia de-testes
PDF
Curso de Performance and Tuning - Linux
PDF
Apresentação "O CMS Seguro"
PPTX
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
PPTX
Tendências e Dicas para o Desenvolvimento de Software
PPTX
Importância de Testes Automatizados para Continuous Delivery & DevOps
PDF
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
PPTX
Introdução a testes de software utilizando selenium
PPTX
CNQS - Testes Automatizados & Continuous Delivery
PDF
Tutorial visão automação de testes e casper js
PPTX
Tutorial - Visão sobre Automação de Testes com CasperJS
PDF
V SEGINFO: “Utilizando padrões abertos para Coleta de informações e Assessmen...
KEY
Integração Contínua com Hudson
Introdução a testes automatizados
[DevOps Carioca] Testes Automatizados
sfCon 2012 - Conceitos de Engenharia Reversa aplicados na migração de sistema...
Palestra - Symfony Framework MVC PHP 5
Python Brasil 2020 - Desmitificando pipeline de dados com Python: o que apren...
Introdução ao framework CodeIgniter
ASP.Net Performance – A pragmatic approach - Luis Paulino
Metodologia de-testes
Curso de Performance and Tuning - Linux
Apresentação "O CMS Seguro"
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
Tendências e Dicas para o Desenvolvimento de Software
Importância de Testes Automatizados para Continuous Delivery & DevOps
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Introdução a testes de software utilizando selenium
CNQS - Testes Automatizados & Continuous Delivery
Tutorial visão automação de testes e casper js
Tutorial - Visão sobre Automação de Testes com CasperJS
V SEGINFO: “Utilizando padrões abertos para Coleta de informações e Assessmen...
Integração Contínua com Hudson
Anúncio

Mais de Tiago Antônio da Silva (20)

PDF
SIF - Sistemas de Informacao e Regressao Linear
PDF
Manual de Sovrevivência do Aluno
PDF
Git e GitHub: Versionamento de Código Fácil
PDF
Caminhos na Carreira Acadêmica: A visão de um tecnólogo que fez mestrado
PDF
Análise e Projeto de Sistemas: Mockup de um Crud no Balsamiq
PDF
Redes - Camada de Enlace de Dados
PDF
Xamarin - Aula 2.1 - AppDolares - Criando a Primeira Interface
PDF
Xamarin - Aula 2 - Criando o Primeiro Projeto com Xamarin Forms
PDF
O que são Redes de Computadores
PDF
Redes - Camada Física e Meios de Transmissão
PDF
Defesa do meu Mestrado: Segmentação de Imagens 3D com Crescimento de Regiões
PDF
Folhas de Estilo XSL
PDF
Divisão de Imagens 3D com CloudCompare
PDF
Curso CSS 3 - Aula Introdutória com conceitos básicos
PDF
Curso JavaScript - Aula jQuery
PDF
Curso JavaScript - Aula sobre DOM e Ajax
PDF
Curso JavaScript - Aula de Introdução como Programar
PDF
Curso HTML 5 - Aula com Formulários, Imagens, Áudio e Vídeo
PDF
Curso HTML 5 - Construindo um Layout
PDF
Curso HTML 5 - Aula Inicial
SIF - Sistemas de Informacao e Regressao Linear
Manual de Sovrevivência do Aluno
Git e GitHub: Versionamento de Código Fácil
Caminhos na Carreira Acadêmica: A visão de um tecnólogo que fez mestrado
Análise e Projeto de Sistemas: Mockup de um Crud no Balsamiq
Redes - Camada de Enlace de Dados
Xamarin - Aula 2.1 - AppDolares - Criando a Primeira Interface
Xamarin - Aula 2 - Criando o Primeiro Projeto com Xamarin Forms
O que são Redes de Computadores
Redes - Camada Física e Meios de Transmissão
Defesa do meu Mestrado: Segmentação de Imagens 3D com Crescimento de Regiões
Folhas de Estilo XSL
Divisão de Imagens 3D com CloudCompare
Curso CSS 3 - Aula Introdutória com conceitos básicos
Curso JavaScript - Aula jQuery
Curso JavaScript - Aula sobre DOM e Ajax
Curso JavaScript - Aula de Introdução como Programar
Curso HTML 5 - Aula com Formulários, Imagens, Áudio e Vídeo
Curso HTML 5 - Construindo um Layout
Curso HTML 5 - Aula Inicial
Anúncio

Testes Funcionais e Estruturais utilizando Selenium IDE e Cobertura

  • 2. • De acordo com PRESSMAN: – Todos os testes devem estar relacionados aos requisitos do cliente (p. 93). – Teste é um conjunto de atividades que podem ser planejadas antecipadamente e conduzidas sistematicamente (p. 262). • Planejamento de Casos de Teste? • Série de Testes: – Alfa e Beta – Integração – Regressão – Sistema – Unidade – Validação – Fumaça 2
  • 3. • Segundo PRESSMAN (p. 316): – Operabilidade: Quanto melhor funciona, mas eficientemente pode ser testado. – Observabilidade: O que você vê, é o que você testa. – Controlabilidade: Quando melhor você controlar o software, mais o teste pode ser automatizado e otimizado. – Decomponibilidade: Controlando o escopo do teste, podemos isolar problemas mais rapidamente e realizar retestagem mais racionalmente. – Simplicidade: Quanto menos houver a testar, mais rapidamente podemos testar. – Estabilidade: Quanto menos modificações, menos interrupções no teste. 3
  • 4. • Também chamado de “teste caixa preta” ou teste comportamental (PRESSMAN, p. 327). – Focaliza os requisitos funcionais do software. – Abordagem complementar a “caixa branca”, buscando os erros: • Erros de Interface. • Funções incorretas ou omitidas. • Erros de comportamento o desempenho. • Erros de Estrutura de Dados ou acesso a Banco de Dados. 4
  • 5. • Ferramenta para gravação, construção, edição e execução de testes, onde a reprodução dos testes é realizada no ambiente real da aplicação. – Extensão do Mozilla Firefox – Onde obter? http://seleniumhq.org/projects/ide – Dica: instalar também a extensão “Page Coverage” • Para tirar “prints” das interfaces testadas. 5
  • 6. 6
  • 7. • Construção: – Passo a passo – Gravação do teste • Gravação dos “prints” das telas testadas • Execução: – A partir de teste salvo previamente – Após a construção. 7
  • 8. 8
  • 9. • Também chamado de “teste caixa branca” ou teste lógico (PRESSMAN, p. 318). – Usa a estrutura de controle para realizar os testes (código fonte). – Buscando os erros: • Todos os caminhos lógicos serão exercitados, nos lados verdadeiro e falso. • Execução de todos os ciclos, dentro limites e bis intervalos estabelecidos. • Exercício das estruturas de dados internas para garantir validade. 9
  • 10. 10
  • 11. • É uma ferramenta “free” para calcular a porcentagem de código Java acessado pelos testes. – Pode ser executado via Ant ou linha de comando. – Instrumentação da Java Bytecode. – Geração de relatórios em HTML (ou XML, para o Hudson!) – Onde Obter? http://cobertura.sourceforge.net/index.html 11
  • 12. Instrumentação das Classes Geração de Relatórios • cobertura-instrument.bat • cobertura-report.bat Parâmetro: Descrição: Parâmetro: Descrição: --basedir Diretório onde estão as --basedir Diretório onde estão as classes que você vai classes que você vai instrumentar. instrumentar. --datafile Diretório que vai conter --datafile Diretório que vai conter o “cobertura.ser” o “cobertura.ser” --destination Diretório das classes --destination Diretório das classes instrumentadas instrumentadas --ignore Expressão regular para --format HTML ou XML ignorar linhas de código. --ignore Expressão regular para ignorar linhas de código. 12
  • 13. – Integração com o NetBeans • project.properties • Automação no Ant (Build.xml) – Instrumentação. – Geração de Relatórios. – Como rodar a geração do relatório? Executar tarefas do Ant. – Como fazer? Quais as Instruções? Arquivo em anexo. 13
  • 14. 14
  • 15. 15
  • 16. • PRESSMAN, R. S. Engenharia de Software. São Paulo: McGraw-Hill, 2006. • Selenium Team. Selenium IDE Project. Disponível em: <http://seleniumhq.org/projects/ide>. Acesso em 06 jun. 2012. • Cobertura Team. Cobertura. Disponível em: < http://cobertura.sourceforge.net/index.html>. Acesso em 10 jun. 2012. • NetBeans. Cobertura – NetBeans Wiki. Disponível em: < http://wiki.netbeans.org/Cobertura >. Acesso em 12 jun. 2012. 16