Teste de Carga Web: LoadRunner vs. LoadView | Navegador Real vs Desempenho Baseado em Protocolo

Neste artigo, comparamos LoadRunner e LoadView usando um cenário de teste prático na aplicação de exemplo PhoneNumberMonitoring.com. O fluxo do teste é simples:

Lançar a aplicação → Fazer login → Navegar para uma aba → Fazer logout

No entanto, como esse fluxo é implementado no LoadRunner vs LoadView é completamente diferente – especialmente quando se trata de esforço de configuração, flexibilidade, escalabilidade e precisão da simulação do mundo real.

Usando LoadRunner: Poder em Nível de Protocolo com Alta Complexidade

LoadRunner oferece controle profundo em nível de protocolo usando VuGen (Virtual User Generator) e suporta protocolos como HTTP/HTML, SAP, Web Services e TruClient etc. Embora isso ofereça flexibilidade para testes corporativos, o esforço envolvido na configuração mesmo de um fluxo básico pode ser avassalador.

Para este teste, usamos o protocolo Web HTTP/HTML, que é adequado para aplicações web sem renderização completa do navegador.

O Que Fizemos no LoadRunner

  • Seleção de Protocolo: Escolhemos HTTP/HTML; no entanto, selecionar o modo correto de gravação (baseado em HTML vs baseado em URL) é uma decisão crítica e frequentemente requer tentativa e erro para garantir a geração correta do script.
  • Gravação com VuGen: Configuramos o mapeamento de porta (como visto na captura de tela) e selecionamos o nível de captura (por exemplo, WinInet ou Socket) — cada um com seu próprio comportamento e
  • Configuração de Correlação: Extração manual de dados dinâmicos de sessão usando web_reg_save_param_ex e JSON path. Se a correlação falhar, o teste falha — sem sugestões automáticas ou dicas na interface.
  • Parametrização: Substituímos valores codificados por arquivos de dados usando a utilidade de Parametrização de Dados do LoadRunner.
  • Think Time & Transações: Envolvemos ações críticas dentro de lr_start_transaction() e adicionamos lr_think_time() para simular atrasos de usuário.
  • Gerenciamento de Sessão: Gerenciamos cookies e cabeçalhos personalizados manualmente entre
  • Lógica Avançada: Adicionamos if-else, loops e código personalizado em C para controle de fluxo

Editor de script VuGen do LoadRunner com requisições WebSocket


Principais Pontos de Dor & Limitações do LoadRunner

Apesar de ser uma ferramenta poderosa, o LoadRunner apresenta vários pontos de atrito: Complexidade de Gravação

  • Escolher entre gravação baseada em HTML ou baseada em URL frequentemente impacta o script
  • Escolher entre captura ao nível WinInet e Socket pode confundir iniciantes — algumas aplicações só respondem corretamente a modos específicos de captura.

Depuração & Solução de Problemas de Logs

  • Os logs do LoadRunner são específicos para protocolo e frequentemente criptografados — logs HTTP, dumps XML e logs de replay estão espalhados em abas e são difíceis de correlacionar em tempo real.
  • Reprodução de sessão de usuário ao vivo não está disponível — dificultando identificar visualmente o que deu errado durante a execução do script.

Correlação Específica por Protocolo

  • Cada protocolo (SAP, Oracle, HTTP, etc.) requer diferentes abordagens de correlação.

Protocolo HTTP/HTML

web_reg_save_param, web_reg_save_param_ex, web_reg_save_param_json, web_reg_save_param_xpath (HTTP/HTML, Web Services), web_reg_save_param_attrib etc

Protocolo SAP GUI

sapgui_get_text, sapgui_select_active_window, sapgui_set_property, sapgui_get_property, sapgui_status_bar_set_text etc

Protocolo Oracle NCA

nca_set_window, nca_set_menu_item, nca_edit_set, nca_button_press, nca_get_text etc

Protocolo Web Service

web_custom_request, web_service_call etc

  • Não há um framework unificado de correlação — até mesmo o TruClient se comporta de forma completamente diferente e não compartilha lógica de correlação com o protocolo HTTP.

Performance & Usabilidade

  • Scripts TruClient simulam fluxos baseados em navegador, mas consomem muitos recursos do sistema e demoram muito para serem executados.
  • A edição visual do fluxo é básica; depurar falhas geralmente envolve alternar entre várias janelas de logs e capturas.

Opções de gravação do LoadRunner para tráfego WebSocket

Configuração de Teste de Carga Distribuído com LoadRunner

  • O LoadRunner requer múltiplos componentes: VuGen para scripting, Controller para orquestração e Load Generators (LGs) para distribuição.
  • Necessita de configuração manual, regras de firewall, abertura de portas e rede
  • Escalabilidade e orquestração de execução aumentam a complexidade — não é adequado para equipes ágeis que precisam de retornos rápidos.

O LoadRunner é poderoso para sistemas legados, mas não ideal para testes web modernos ou iterações baseadas em sprints.

Usando LoadView: Teste de Carga com Navegador Real Simplificado

LoadView oferece uma abordagem moderna com teste de carga nativo na nuvem baseado em navegador. Ele simula o comportamento real do usuário em navegadores como Chrome ou Edge, validando não apenas a resposta do back-end, mas também a performance real do front-end (métricas UX).

Para o mesmo fluxo no PhoneNumberMonitoring.com, usamos o EveryStep Recorder e concluímos a configuração do teste em menos de 5 minutos — sem código, sem configurações e sem plugins.

Por Que o LoadView Pareceu Sem Esforço

  • Grave como um usuário real: Basta clicar, digitar, rolar — do jeito que um usuário real interage.

Diálogo de novo script do EveryStep Recorder com uma URL de site

  • Sem correlação: LoadView captura valores dinâmicos (tokens, sessões)
  • Suporte completo a scripts em C#: Para usuários avançados, o LoadView oferece capacidades completas de scripting em C#, permitindo o uso de loops, condições, declarações de variáveis e mais — dando flexibilidade para personalizar fluxos conforme necessário.

Por Exemplo: Abortando a execução do script em um erro de validação de conteúdo

Código do script EveryStep Recorder para etapas de navegador com múltiplas abas

  • Cookies e cabeçalhos pré-definidos: Você pode configurar cabeçalhos de requisição, detalhes de autenticação, cookies e user agents antes da execução para imitar cenários do mundo real com mais precisão.
  • Amigável para iniciantes, pronto para especialistas: Embora seja fácil começar com uma gravação simples, o LoadView escala para atender às necessidades de testadores experientes de performance, tornando-o uma combinação rara de simplicidade e poder.
  • Renderização completa do navegador: Suporta SPAs, AJAX, WebSockets — o que você vê é o que você testa.
  • Teste geo-distribuído: Escolha entre mais de 40 regiões globais para simular carga de usuários de localizações reais.

Seleção de injetor de carga geográfica do LoadView

  • Reprodução de Sessão ao Vivo: Você pode assistir como o teste foi executado, passo a passo, incluindo renderização da página e atividade de entrada — isso não é possível no LoadRunner.
  • Métricas de Front-End: Veja LCP (Largest Contentful Paint), FCP (First Contentful Paint) e TTI (Time to Interactive) diretamente no relatório.

Linha do tempo de resposta de requisição do LoadView com detalhes de tempo

  • Editor Visual de Fluxo: Modifique qualquer etapa visualmente — sem necessidade de tocar código ou analisar logs

Prévia da reprodução e editor de script do EveryStep Recorder

Comparação de Recursos: LoadRunner vs LoadView

RecursoLoadRunnerLoadView
Opções de GravaçãoMúltiplos níveis de captura (WinInet, Socket), decisões de protocoloGravação baseada em navegador com um clique
Necessidade de ScriptingSim – scripting avançado, parametrização, correlaçãoNão – grave e execute sem scripts
Manipulação de Valores DinâmicosManual – por protocoloCorrelação automática
Simulação de Navegador RealSomente via TruClient (pesado, lento)Nativo Chrome/Edge
Métricas de FrontendLimitadas no TruClientTotalmente disponíveis (FCP, LCP, TTI)
Reprodução de Sessão ao VivoNão disponívelDisponível — com reprodução
Tempo de Criação do Teste45–90 minutos5–10 minutos
Análise de LogsLogs complexos por protocolo, correlação manualLogs de passos baseados na UI, capturas de tela
Manipulação Específica de ProtocoloVaria por tipo de aplicação (HTML, SAP, Oracle)Gravador unificado para todos os fluxos web
Testes DistribuídosRequer Load Generators e ControllerExecução em nuvem integrada
Requisito de HabilidadeAlto – necessita scripting & depuraçãoBaixo – usuários de negócios também podem testar
Custo & LicenciamentoLicenciamento empresarial caroPreço transparente baseado em uso

Impacto Real na Aplicação

Casos de UsoLoadRunnerLoadView
Checkout de E-CommerceRequer scripting para tokens assíncronos e atrasos JSFluxo de checkout em navegador real com validação UX
Dashboards
Bancários
Necessa correlação profunda, rastreamento de tokensFácil de simular login e navegação em dashboards seguros
Simulação de Carga GeográficaConfiguração de LG necessária para cada regiãoSeletor geográfico simples na UI
Teste em Sprint ÁgilMais lento para modificar e reexecutar testesCriação rápida e fácil reutilização
Demonstrações ao Cliente & POCsRequer configuração e coordenaçãoGrave e compartilhe resultados instantaneamente

Resumo Final

Escolha LoadRunner Se:

  • Você precisa de teste profundo em nível de protocolo
  • Você trabalha com aplicações legadas (SAP, Oracle, Mainframes)
  • Sua equipe é tecnicamente proficiente e possui infraestrutura dedicada

Escolha LoadView Se:

  • Você quer testar aplicações modernas baseadas em navegador
  • Você se importa com performance de front-end e experiência do usuário
  • Você precisa de um ciclo de teste mais rápido e simples com suporte a navegador real