NBomber е отворен .NET фреймуърк, с отворен код протокол Apache 2.0, NBomber се използва за зареждане на различни услуги, включително уеб, опашки за съобщения, бази данни и др. NBomber версия 2.0 беше пусната през май тази година. NBomber е подобен на JMeter, но разликата от JMeter е, че NBomber изразява тестови сценарии чрез F#/C#/JSON код.
Основната причина за NBomber е да предостави лека рамка за писане на тестове за натоварване, която можете да използвате за тестване на всяка система и симулиране на всяко производствено натоварване. Просто искаме да предоставим някаква абстракция, за да можем да опишем всякакъв тип полезен товар и все пак да имаме прост, интуитивен API. Друга цел е да предоставите градивни елементи за валидиране на вашия POC (proof of concept) проект чрез прилагане на всяко сложно разпределение на натоварването. С NBomber можеш да тестваш всяка PULL или PUSH система (HTTP, WebSockets, GraphQl, gRPC, SQL Databse, MongoDb, Redis и др.). С NBomber лесно можеш да преобразуваш някои интеграционни тестове в тестове за натоварване.
NBomber като съвременна рамка предоставя:
- Протоколи с нулева зависимост (HTTP/WebSockets/AMQP/SQL)
- Нулева зависимост от семантични модели (Pull/Push)
- Много гъвкава конфигурация и много проста API (F#/C#/JSON)
- Поддръжка на клъстери
- Репортажи в реално време
- Интеграция между CI/CD
- Поддръжка на поток от данни
GitHub адрес:Входът към хиперлинк е видим. Адрес на документа:Входът към хиперлинк е видим.
Първо, създайте нов конзолен проект за .NET Core 3.1 и използвайте nuget, за да инсталирате следния пакет:
За да получите максимална производителност от NBomber, трябва да редактирате настройките на проекта със следната конфигурация:
Настройки за събиране на отпадъци GarbageCollection трябва да премине към сървърен и конкурентен режим:
Пълна подготовка на проекта:
Тествайте изпращане на заявка за GET до този сайт и задайте персонализиран заглавие на заявка със следния код:
Програмата автоматично ще генерира тестов отчет под директорията bin\Debug\netcoreapp3.1\reports\, както е показано на фигурата по-долу:
(Край)
|