View
303
Download
0
Category
Preview:
Citation preview
Utilização de Ferramentas para testes de sistemas WebJúlio César de Freitas Taveira
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
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
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.
Agenda
Foco das Ferramentas Ferramentas de Testes no Servidor Ferramentas de Testes de Solicitações Ferramentas de Testes no Navegador
Focos das FerramentasServidores
Clientes
Testes no Servidor
Testes no Navegador
Respostas
RequisiçõesTestes de Solicitações
Aplicativos Para Testes
Navegadores Comuns
Testes no Servidor
Testa a aplicação dentro do próprio servidor de aplicação; JUnitE Cactus
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
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
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
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
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
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
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.
JMeter – Tipos de Serviços
FTP HTTP JDBC SOAP/XML-RPC... Fase Alpha
WebService JMS...
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
Teste no Cliente
Utilização de Ferramentas para verificar o conteúdo retornado pelo servidor (HTML + JavaScript) HTMLUnit FireUnit/FireBug
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
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
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
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
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
Recommended