Em suma, as plataformas UserView e BrowserView carregam páginas da Web em navegadores reais e executam todos os componentes da página. O monitoramento via HTTP(S) usa navegadores sintéticos emulados e apenas baixando elementos de página que são solicitados sem renderização.

As tarefas http(S) utilizam solicitações HTTP/S entre um navegador sintético personalizado e o servidor para realizar o monitoramento. Embora as tarefas HTTP(S) também possam ser gravadas e reproduzidas para aplicativos de monitoramento, é especificamente útil ao monitorar o desempenho do servidor associado a um aplicativo web. Além disso, as tarefas HTTP(S) suportam variáveis dinâmicas, cookies e sites seguros. As tarefas HTTP(S) usam um processo personalizado (não um navegador regular) para reproduzir as etapas gravadas, por isso não é recomendado para sites que usam fortemente RIAs (Rich Internet Applications, aplicativos de Internet rico), como JavaScript ou AJAX. Uma vez que o conteúdo da Web pode não ser incorporado na resposta HTTP(S) (no caso de executar a AJAX), a tarefa HTTP(S) pode desencadear um falso alerta sobre a validação do conteúdo.

Por outro lado, as tarefas criadas nas plataformas BrowserView e UserView utilizam um navegador regular para abrir uma página da Web e reproduzir a tarefa. Portanto, ambos fornecem validação de conteúdo em uma janela real do navegador, para que você possa verificar visualmente a presença de conteúdo relevante. Além disso, o UserView reproduz um caminho de várias etapas através de um aplicativo, como um carrinho de compras ou envio de login. O monitoramento do UserView é capaz de imitar eventos reais do navegador durante o monitoramento, como cliques do mouse, digitação de texto e paitos. Esses eventos são executados em uma janela do navegador (veja imagem acima.). O aspecto regular do navegador do monitoramento do UserView pode ser acoplado a uma tecnologia virtual de “jogo de imagem” de teclado/mouse, que permite o monitoramento de aplicativos web muito complexos executando RIAs, incluindo Silverlight, AJAX, Flex, Flash, JavaScript, applets, complementos, bem como outros objetos de página da Web que interagem dinamicamente com um navegador. Além disso, o UserView é capaz de gravar uma captura de vídeo da interação da página à medida que os problemas são detectados.

Como fazer uma escolha

Uma maneira de verificar qual tipo de monitoramento é mais apropriado é decidir se você quer ter certeza de que uma página da Web está disponível para um usuário final ou para verificar se seu conteúdo é renderizado corretamente.

Se a disponibilidade de URL estiver em questão, selecione a tarefa HTTP(S).

Se a verificação de conteúdo for importante, selecione uma tarefa nas plataformas BrowserView ou UserView. Para fazer uma escolha entre as plataformas BrowserView e UserView, basta testar a página que deseja monitorar. Se a página contiver JavaScript, que pode manipular o conteúdo ou carregá-lo adicionalmente de servidores ou de terceiros, a plataforma UserView será recomendada.

Devido a essas diferenças na tarefa HTTP(S) e nas tarefas das plataformas BrowserView e UserView, também há uma diferença no tempo de resposta medido por cada tipo de tarefa.

Veja abaixo um exemplo das diferenças:

O site http://daniel.lorch.cc/docs/ajax_simple/ajax-cool.html? tem um campo de edição. Se o número “1” for inserido no campo de edição, o JavaScript fará uma solicitação para http://daniel.lorch.cc/docs/ajax_simple/validate.php, que deve retornar uma sequência de “Nome de usuário muito curta” e exibi-la como HTML.

Como um script de monitoramento do UserView emula a ação de um navegador real, ele executará as seguintes etapas: carregar a página, encontrar o campo de edição e inserir “1”; a ação final é uma validação de palavras-chave que a sequência “Nome de usuário muito curto” é exibida no HTML:

UserView Script

script_version=1,4; recorder_version=1,26,6.23847; data=17.11.2010; IE=8.0.6001.18702;

DMBrowser dmb0 = nulo;

Passo(1, @” – http://daniel.lorch.cc/docs/ajax_simple/ajax-cool.html?”);

dmb0 = Tabs.NewTab();

Dmb0. GoTo(“http://daniel.lorch.cc/docs/ajax_simple/ajax-cool.html?”);

Dmb0. TextField (“//INPUT[não(@NAME) e não (@TYPE)]”). Clique();

Dmb0. TextField (“//INPUT[não(@NAME) e não (@TYPE)]”). TypeText(“1″);

DMAssert.CHECK(@”Procurando por ‘Nome de usuário muito curto'”, ()= > dmb0. Text.Contains(@”Nome de usuário muito curto “), dmb0);

O monitoramento http(S) executa essa tarefa de forma diferente. Ele emula solicitações HTTP(S) de baixo nível. Por exemplo, se o exemplo de monitoramento anterior do UserView for convertido em um processo de monitoramento HTTP(S), o monitoramento será realizado como duas tarefas HTTP com solicitações GET:

Tarefas HTTP(S)

Obter http://daniel.lorch.cc/docs/ajax_simple/ajax-cool.html

Obter http://daniel.lorch.cc/docs/ajax_simple/validate.php?name=1