NBomber é um framework .NET de código aberto, o protocolo de código aberto é Apache 2.0, NBomber é usado para testar carga de uma variedade de serviços, incluindo web, filas de mensagens, bancos de dados, etc. A versão 2.0 do NBomber foi lançada em maio deste ano. NBomber é semelhante ao JMeter, mas a diferença do JMeter é que o NBomber expressa cenários de teste por meio do código F#/C#/JSON.
A principal razão por trás do NBomber é fornecer uma estrutura leve para escrever testes de carga que você possa usar para testar qualquer sistema e simular qualquer carga de trabalho em produção. Só queremos fornecer alguma abstração para que possamos descrever qualquer tipo de carga útil e ainda assim ter uma API simples e intuitiva. Outro objetivo é fornecer blocos de construção para validar seu projeto POC (prova de conceito) aplicando qualquer distribuição complexa de carga. Com NBomber, você pode testar qualquer sistema PULL ou PUSH (HTTP, WebSockets, GraphQl, gRPC, SQL Databse, MongoDb, Redis, etc.). Com o NBomber, você pode facilmente converter alguns testes de integração em testes de carga.
O NBomber, como estrutura moderna, oferece:
- Protocolos de dependência zero (HTTP/WebSockets/AMQP/SQL)
- Dependência zero de modelos semânticos (Pull/Push)
- Configuração muito flexível e API muito simples (F#/C#/JSON)
- Suporte a cluster
- Relatórios em tempo real
- Integração CI/CD
- Suporte a fluxo de dados
Endereço do GitHub:O login do hiperlink está visível. Endereço do documento:O login do hiperlink está visível.
Primeiro, crie um novo projeto de console .NET Core 3.1 e use o Nuget para instalar o seguinte pacote:
Para obter o máximo desempenho do NBomber, você deve editar as configurações do seu projeto com a seguinte configuração:
Configurações de coleta de lixo O GarbageCollection deve mudar para o modo servidor e concorrência:
Configuração completa do projeto:
Teste o envio de uma requisição GET para este site e defina um cabeçalho de requisição personalizado com o seguinte código:
O programa gerará automaticamente um relatório de teste no diretório bin\Debug\netcoreapp3.1\reports\, conforme mostrado na figura abaixo:
(Fim)
|