Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. F#
  3. NBomber

NBomber

CSSv6.4.1

A distributed load-testing framework for .NET that tests any system regardless of protocol or semantic model using plain C# or F#.

Visit WebsiteGitHubGitHub
2.2k stars140 forks0 contributors

What is NBomber?

NBomber is a distributed load-testing framework for .NET that allows developers to test any system—regardless of protocol or semantic model—using plain C# or F#. It simulates realistic production workloads, supports distributed clusters, and integrates with CI/CD pipelines. The framework solves the problem of validating system performance under load without being tied to specific protocols.

Target Audience

.NET developers, QA engineers, and DevOps teams who need to perform load, stress, and performance testing on HTTP APIs, WebSockets, databases, message brokers, and other systems.

Value Proposition

Developers choose NBomber for its protocol-agnostic design, simple API that uses native C#/F# constructs, and powerful distributed testing capabilities. It eliminates the need to learn a new DSL and provides real-time reporting, making it a flexible and efficient choice for modern load testing.

Overview

Distributed load-testing framework for .NET. Create distributed load test scenarios entirely using plain C# or F#. It is designed to test any system regardless of the protocol or a semantic model (Pull/Push).

Use Cases

Best For

  • Load testing microservices and distributed systems
  • Performance validation of HTTP APIs and WebSocket services
  • Stress testing databases like SQLite, Redis, or MongoDB
  • Simulating production workloads for proof-of-concept projects
  • Integrating load tests into CI/CD pipelines with xUnit/NUnit
  • Testing message brokers like Kafka, RabbitMQ (AMQP), or MQTT

Not Ideal For

  • Teams working outside the .NET ecosystem who need load testing in languages like Java or Python
  • Organizations with strict budget constraints requiring free, open-source tools for commercial load testing
  • Projects where quick, GUI-based test creation is preferred over code-heavy scenarios
  • Simple HTTP load testing scenarios where lightweight tools like k6 might offer faster setup

Pros & Cons

Pros

Protocol Agnostic Design

NBomber supports testing any system regardless of protocol, including HTTP, WebSockets, AMQP, and databases, as evidenced by its 'Zero dependencies on protocol' claim and extensive protocol list in the README.

Native Debugging Support

Developers can debug load tests directly in IDEs like Visual Studio or Rider, making integration with existing .NET workflows seamless, as highlighted in the 'Native Debug' section.

Distributed Testing Capabilities

The framework allows running tests in a distributed cluster across multiple nodes, enabling scalable load simulation for large systems, detailed in the 'Distributed Cluster' documentation.

Real-time Monitoring Integration

NBomber integrates with tools like InfluxDB and Grafana for live insights, and offers NBomber Studio for dedicated real-time reporting, as mentioned in the 'Realtime reporting' section.

Cons

Licensing Cost for Organizations

While free for personal use, NBomber requires a paid license for organizational usage, which can be a barrier, as stated in the FAQ: 'For the organization usage, you should have a license.'

.NET Ecosystem Lock-in

The framework is built solely for .NET, limiting its use to teams familiar with C# or F#, and excluding other programming environments, which restricts cross-platform adoption.

Complex Distributed Setup

Setting up distributed clusters may involve additional configuration and infrastructure, as hinted by the need for a local dev cluster mode for free testing, potentially increasing overhead for beginners.

Frequently Asked Questions

Quick Stats

Stars2,230
Forks140
Contributors0
Open Issues156
Last commit14 days ago
CreatedSince 2018

Tags

#load-testing#stress-testing#performance-testing#integration-testing#csharp#dotnet#http-testing#ci-cd#distributed-testing#fsharp#websockets

Built With

F
F#
.
.NET
C
C++

Links & Resources

Website

Included in

.NET21.2kF#1.4k
Auto-fetched 21 hours ago

Related Projects

BogusBogus

:card_index: A simple fake data generator for C#, F#, and VB.NET. Based on and ported from the famed faker.js.

Stars9,691
Forks543
Last commit5 months ago
MoqMoq

The most popular and friendly mocking framework for .NET

Stars6,385
Forks834
Last commit6 days ago
xUnit.netxUnit.net

xUnit.net is a free, open source, community-focused unit testing tool for .NET.

Stars4,580
Forks838
Last commit1 day ago
TestcontainersTestcontainers

A library to support tests with throwaway instances of Docker containers for all compatible .NET Standard versions.

Stars4,308
Forks348
Last commit4 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub