Post

1 Star2 Stars3 Stars4 Stars5 Stars
Loading ... Loading ...

By Jailton Alkimin Louzada
Saudações leitores! Vou falar de um assunto que muitas vezes nos faz realmente quebrar a cabeça quando estamos usando o Selenium RC, para testar aplicações que contém requisições assíncronas, ou seja, que usam AJAX.
O grande problema em se testar aplicações que usam Ajax é de fato a função primordial dele, que é realização de requisições assíncronas, para se ter uma idéia melhor do motivo do problema vou exemplificar com um cenário hipotético de teste:
CENÁRIO:
Em seu sistema você possui uma funcionalidade para consulta, no qual você deverá informar algum parâmetro e ao clicar no botão de “consultar” o sistema carregará uma GRID contendo todos os resultados da consulta, porém o problema da questão em si é o fato de a consulta ser feita de forma assíncrona, ou seja, não será necessário o carregamento total da página para que os resultados sejam retornados! Isso é ótimo, já que realmente o que é realmente interessante seria carregado para o usuário e os dados trafegados pela rede seriam reduzidos e o usuário não precisaria aguardar a página ser recarregada a cada requisição com o servidor. O problema de se testar uma aplicação desse tipo é que você não consegue “prever” em quanto tempo o resultado da consulta será exibido, seria fácil se usássemos um comando do tipo clickAndWait, por exemplo, porém esse comando não solucionaria nossos problemas porquê ele aguarda o carregamento por completo da página, e não de uma parte dela.
Há atualmente várias soluções para esse tipo de problemas, algumas realmente funcionam e evitam o problema nos testes em que há carregamento parcial da página e outras paliativas que apesar de não ser a melhor prática, dá pra quebrar um galho! Veja abaixo algumas formas de “burlar” os problemas que ocorrem com testes em páginas com Ajax.
1

Você também pode querer ler

Comments are off for this post.