Futile.Reqnroll.Amp
0.1.0
dotnet add package Futile.Reqnroll.Amp --version 0.1.0
NuGet\Install-Package Futile.Reqnroll.Amp -Version 0.1.0
<PackageReference Include="Futile.Reqnroll.Amp" Version="0.1.0" />
<PackageVersion Include="Futile.Reqnroll.Amp" Version="0.1.0" />
<PackageReference Include="Futile.Reqnroll.Amp" />
paket add Futile.Reqnroll.Amp --version 0.1.0
#r "nuget: Futile.Reqnroll.Amp, 0.1.0"
#:package Futile.Reqnroll.Amp@0.1.0
#addin nuget:?package=Futile.Reqnroll.Amp&version=0.1.0
#tool nuget:?package=Futile.Reqnroll.Amp&version=0.1.0
Reqnroll.Amp is a class library that boosts (amplifies) your test‑writing. Reqnroll is the BDD testing environment for C#. Reqnroll.Amp is a tiny class library on top of Reqnroll.
Features:
- Support for Windows application E2E testing
- Support for Web application E2E testing
- Support for Web API E2E testing
- Test profiles which can be selected at runtime
- Support of multiple applications under test
Getting Started
The test projects under /tests/ are best suited to get started. The source code contains tests for all of the features listed above.
| Test Project | Feature | Description |
|---|---|---|
| WebCalculator.Specs | PlayWrightMinimal | Tests the online calculator https://futile-calculator.netlify.app/ |
| WebCalculator.Specs | PlayWrightProfile | Tests the online calculator with different profiles (e.g. testing in slow motion) |
| WebCalculator.Specs | PlayWrightProfile | Tests the online calculator with a command line argument that is defined in the test (i.e. as a variable) |
| WpfCalculator.Specs | FlaUiMinimal | Tests the WpfCalculator.exe |
| WpfCalculator.Specs | FlaUiWithProfile | Tests the WpfCalculator.exe with different profiles |
| WpfCalculator.Specs | FlaUiWithProfileAndArgument | Tests the WpfCalculator.exe with a command line argument that is defined in the test (i.e. as a variable) |
| Wpf2Calculator.Specs | FlaUI | Tests two WpfCalculator.exe at the same time |
| WindowsCalculator.Specs | FlaUI | Tests the Windows calculator. |
| WebCalculatorApi.Specs | HttpClientTestHost | Tests the calculator Web Api by starting a ASP.NET TestHost |
Examples
The example projects are more extensive than test projects. The example projects do not try to solve "real world problems". Instead, they demonstrate some aspects of E2E testing like:
- Test multiple systems in one test scenario
- Test a web application in a docker container
How it works
While Reqnroll does the hard stuff and lets you use BDD for unit tests, integration tests, E2E test with any framework that is on the market (PlayWright, Selenium, ... you name it), various DI frameworks, Testing frameworks (MSTest, NUnit, xUnit), Reqnroll.Amp comes with some hard-wired decisions.
Reqnroll.Amp uses:
- Reqnroll
- Chrome browser and PlayWright for Web UI testing
- FlaUI for Windows application testing
- xunit.v3
- Autofac
Two features are unique:
- It is possible to define profiles in
reqnroll.ampsettings.jsonwhich can be selected at runtime - It is possible to start applications as part of a e2e test. Multiple Web UIs, APIs and Windows applications can be part of one test scenario
Repository structure
- src: source code of the Reqnroll.Amp library
- tests: test the features and aspects of Reqnroll.Amp. Best entry point to learn
- examples: examples use Futile.Reqnroll.Amp nuget package from nuget.org. Examples are more complex than tests
If you want to work offline (air-gapped), you may like the "Build-AmpArtifacts" resp. "Build-AmpArtifacts-windows" scripts. These scripts get all the package dependencies and compress the nuget packages into an archive (zip on Windows, tar.gz on Linux)
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Autofac (>= 4.0.0)
- Microsoft.Extensions.Configuration (>= 10.0.5)
- Microsoft.Extensions.Configuration.Binder (>= 10.0.5)
- Microsoft.Extensions.Configuration.Json (>= 10.0.5)
- Microsoft.Extensions.Options (>= 10.0.5)
- Microsoft.Playwright (>= 1.58.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Futile.Reqnroll.Amp:
| Package | Downloads |
|---|---|
|
Futile.Reqnroll.Amp-windows
Additional classes for reqnroll. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0 | 112 | 5/3/2026 |
| 0.0.2-prerelease.8 | 63 | 5/1/2026 |
| 0.0.2-prerelease.7 | 50 | 5/1/2026 |
| 0.0.2-prerelease.6 | 47 | 5/1/2026 |
| 0.0.2-prerelease.5 | 83 | 4/5/2026 |
| 0.0.1 | 131 | 3/29/2026 |
| 0.0.1-prerelease16 | 105 | 3/22/2026 |
| 0.0.1-prerelease01 | 112 | 3/15/2026 |
| 0.0.1-prerelease.2 | 67 | 3/29/2026 |