Sobre o projeto

Apache JMeter é uma aplicação Java de código aberto amplamente utilizada, projetada para medir desempenho e testar carga de aplicações. Ela pode simular cargas pesadas em servidores, redes ou objetos para analisar o desempenho geral sob diferentes tipos de carga, tornando-a adequada para aplicações web estáticas e dinâmicas. **Principais Recursos:** - **Protocolos:** Suporta HTTP/HTTPS, SOAP/REST, FTP, JDBC, LDAP, JMS, Mail (SMTP/POP3/IMAP), TCP, comandos nativos e objetos Java. - **IDE:** Uma IDE de Teste completa para gravação (de navegadores ou aplicativos nativos), construção e depuração de planos de teste. - **Linha de Comando:** Modo não-GUI/sem cabeça para teste de carga em qualquer SO compatível com Java (Linux, Windows, Mac OSX). - **Relatórios:** Gera relatórios HTML dinâmicos e suporta relatórios ao vivo para bancos de dados de terceiros como InfluxDB ou Graphite. - **Correlação:** Extrai dados de HTML, JSON, XML ou qualquer formato textual usando extratores. - **Extensibilidade:** Amostradores plugáveis, amostradores scriptáveis (ex.: Groovy), estatísticas de carga plugáveis, plugins de visualização e funções para entrada dinâmica. Integra-se com Maven, Gradle e Jenkins para CI. **Requisitos:** Requer Java 17 Runtime Environment; um JDK com keytool é melhor para gravar HTTPS. Jars opcionais (JDBC, JMS, Bouncy Castle) podem ser necessários. **Instalação e Execução:** Descompacte o arquivo binário e execute `jmeter` (Unix) ou `jmeter.bat` (Windows) a partir do diretório `bin`. O Windows também oferece scripts de arrastar e soltar para testes não-GUI. **Documentação:** Inclui documentos HTML no diretório `docs`, começando por `index.html`. **Build:** Construído com Gradle, usando JDK 17 por padrão (release alvo 8). Comandos como `./gradlew build`, `./gradlew createDist` e `./gradlew runGui` estão disponíveis. Configurações de proxy podem ser definidas em `~/.gradle/gradle.properties`. **Licenciamento:** Apache License 2.0. Inclui avisos de software criptográfico para autenticação HTTPS e NTLM via APIs JSSE/JCE.