22
Utilização de Ferramentas para testes de sistemas Web Júlio César de Freitas Taveira

10.Frameworks Testes

Embed Size (px)

Citation preview

Page 1: 10.Frameworks Testes

Utilização de Ferramentas para testes de sistemas WebJúlio César de Freitas Taveira

Page 2: 10.Frameworks Testes

Motivação

Vem crescendo o uso de aplicações em Sistemas Web;

Cada vez mais softwares stand alone estão sendo disponibilizados na Web Aplicações comerciais

Ex: Home Bank, portais do governo Ferramentas de escritório

Office online, Google Docs Sistema operacionais

Exemplo: Crome SO

Page 3: 10.Frameworks Testes

Motivação (2)

Cada vez mais vem crescendo o uso do testes de software para melhorar a qualidade do software;

Sistemas Web necessitam de testes bem mais produndos, pois a usabilidade pode variar de implementações de Navegador para Navegador

Page 4: 10.Frameworks Testes

Objetivo

Apresentar ferramentas para testes de aplicações WEB Diferenciando pelas suas funcionalidades e

aplicabilidades Dividindo em grupos pelo tipo do teste a ser

realizado Focando aplicações na Plataforma Java EE, para

servidor de aplicações.

Page 5: 10.Frameworks Testes

Agenda

Foco das Ferramentas Ferramentas de Testes no Servidor Ferramentas de Testes de Solicitações Ferramentas de Testes no Navegador

Page 6: 10.Frameworks Testes

Focos das FerramentasServidores

Clientes

Testes no Servidor

Testes no Navegador

Respostas

RequisiçõesTestes de Solicitações

Aplicativos Para Testes

Navegadores Comuns

Page 7: 10.Frameworks Testes

Testes no Servidor

Testa a aplicação dentro do próprio servidor de aplicação; JUnitE Cactus

Page 8: 10.Frameworks Testes

Testes no Servidor - JUnitEE

Veio complementar as limitações do framework de teste JUnit Não apropriados para execução em servidores de

aplicações O conteúdo desejado não é HTML Não possibilidade de testar aplicações web não

EJB Se a aplicação é um servlet, pode haver

interferência nos resultados desejados

Page 9: 10.Frameworks Testes

Testes no Servidor – JUnitEE (2) JUnitEE

Fornece um TestRunner que gera saída HTML Fornece um Servlet para ponto de entrada dos

casos de testes Os testes são pacotes dentro de um .war e

podem ser facilmente movido entre servidores; As classes de teste são dinamicamente

recarregadas pelos servidores de aplicação

Page 10: 10.Frameworks Testes

Testes no Servidor - Cactus

Simples framework de teste do projeto Jakarta para testes de unidade em servidores Java (Servlet, EJBs, TagLibs...)

A intenção é escrever código de teste com baixo custo

Estende o JUnit Executa os testes dentro do container

Page 11: 10.Frameworks Testes

Testes no Servidor – Cactus (2) Diferentes tipos de testes de unidade

Testes de unidade de código lógico Testes de unidade de integração Testes de unidade funcional

Page 12: 10.Frameworks Testes

Teste de Solicitações

Aplicativos específicos fazem solicitações a servidores de aplicações a fim de verificar comportamento funcional de execução e performace JMeter Selenium WebTest Canoon

Page 13: 10.Frameworks Testes

JMeter

Ferramenta utilizada para testes de carga em serviços oferecidos por sistemas computacionais. Parte do projeto Jakarta da Apache Software

Foundation. Disponibiliza diversos tipos de requisições e

assertions(validar resultados) Controladores lógicos como loops(ciclos) Controles condicionais

Page 14: 10.Frameworks Testes

Jmeter (2)

Disponibiliza também controle de Threads Thread Group Possível configurar o número de threads quantidade de vezes que cada será executada intervalo entre cada execução

Existem diversos listeners baseando nos resultados das requisições ou dos

assertions, podem ser usados para gerar gráficos e tabelas.

Page 15: 10.Frameworks Testes

JMeter – Tipos de Serviços

FTP HTTP JDBC SOAP/XML-RPC... Fase Alpha

WebService JMS...

Page 16: 10.Frameworks Testes

Canoo WebTest

Uma ferramenta de teste para aplicações Web OpenSource

Os testes podem ser escritos no formato XML ou um aplicativo Java

O resultado dos testes é um relatório demonstrando os resultados unitários e resultados gerais

Page 17: 10.Frameworks Testes

Teste no Cliente

Utilização de Ferramentas para verificar o conteúdo retornado pelo servidor (HTML + JavaScript) HTMLUnit FireUnit/FireBug

Page 18: 10.Frameworks Testes

HTMLUnit

É uma ferramenta que funciona como um browser para desenvolvedores

Usa o modelo do HTML e disponibiliza uma API para chamar páginas preencher formulários Acessar links Ações que podem ser realizadas em um browser

Base para outras ferramentas de testes

Page 19: 10.Frameworks Testes

HTMLUnit (2)

Tem grande suporte a JavaScript Consegue trabalhar com Ajax Jquery GWT...

Consegue simular as implementações dos principais browsers disponíveis no mercado

Não é um framework de testes genéricos É um simulador de browsers para testes de

conteúdo HTML+CSS+JavaScript

Page 20: 10.Frameworks Testes

HTMLUnit - Features

Suporta HTTP, HTTPS, Cookies, POST e GET (assim como HEAD, DELETE, ...) Respostas HTML

Submissão de formulários Objetos DOM…

Configuravel com um proxy server

Page 21: 10.Frameworks Testes

FireUnit/FireBug

São duas ferramentas (relacionadas) para testar o conteúdo JavaScript e HTML+CSS

Funciona em cima do FireFox Utilzia Guias do firefox para apresentar e

interagir com o cónteúdo relacionado

Page 22: 10.Frameworks Testes

FireUnit/FireBug (2)

FireBug Interação com o conteúdo HTML, CSS e

JavaScript da pagina Pode analizar cada elemento

FireUnit Fornece uma API simples para JavaScript

simples teste de log e ver dentro de uma nova guia do Firebug.

Pode-se Gerar Scripts para fazer a interação com o javascript desejado