Skip to main content

Benchmarks

These benchmarks compare the happy-path overhead of aweXpect.Web (passing assertions, the dominant case in a healthy test suite) against the equivalent FluentAssertions calls.

Methodology
  • Suite: HappyCaseBenchmarks driven by BenchmarkDotNet.
  • Job: MediumRun with the in-process toolchain.
  • Runner: ubuntu-latest GitHub Actions agent, refreshed on every push to main.
  • FluentAssertions has no expectations on HttpResponseMessage or Uri, so its benchmarks do what a FluentAssertions user writes instead, e.g. read the content as a string.
  • Each tab shows the latest measured time and allocated memory; bars are scaled within the row so length corresponds to magnitude. Lower is better.
FluentAssertions v8.11.0
1.3×as long
3.2×as much memory
relative to aweXpect · median of 6 benchmarks

Verifies that the response has a success status code. FluentAssertions verifies IsSuccessStatusCode.

Time
aweXpect233.5 ns
FluentAssertions243.0 ns+4%
Memory
aweXpect528 B
FluentAssertions952 B+80%
Captured on commit 77e01f4b (2026-10-31) on ubuntu-latest.
aweXpect
await That(_response).HasStatusCode().Success();
FluentAssertions
_response.IsSuccessStatusCode.Should().BeTrue();

View source on GitHub →