QaaS.Runner.Storage
4.5.3
dotnet add package QaaS.Runner.Storage --version 4.5.3
NuGet\Install-Package QaaS.Runner.Storage -Version 4.5.3
<PackageReference Include="QaaS.Runner.Storage" Version="4.5.3" />
<PackageVersion Include="QaaS.Runner.Storage" Version="4.5.3" />
<PackageReference Include="QaaS.Runner.Storage" />
paket add QaaS.Runner.Storage --version 4.5.3
#r "nuget: QaaS.Runner.Storage, 4.5.3"
#:package QaaS.Runner.Storage@4.5.3
#addin nuget:?package=QaaS.Runner.Storage&version=4.5.3
#tool nuget:?package=QaaS.Runner.Storage&version=4.5.3
QaaS.Runner
Execution orchestration package for running QaaS test workflows from YAML configuration.
Contents
Overview
This repository contains one solution: QaaS.Runner.sln.
QaaS.Runner is published to NuGet and includes the runner runtime plus packaged project outputs from this solution that are required at runtime (sessions/assertions/storage orchestration flow).
Packages
| Package | Latest Version | Total Downloads |
|---|---|---|
| QaaS.Runner |
Projects
QaaS.Runner
- CLI/bootstrap entrypoint for
run,act,assert,template, andexecuteverbs. - Builds execution contexts and routes each execution type through the right logic chain.
- Orchestrates setup/teardown, optional Allure result serving, ReportPortal access validation, and final ReportPortal publishing.
QaaS.Runner.Assertions
- Builds assertion runtime objects from configured hooks and filters.
- Executes assertions against session/data-source outputs.
- Writes Allure results, links, and attachments.
- Can also publish the same runner-produced assertion results into ReportPortal.
QaaS.Runner.Sessions
- Session runtime with staged action execution.
- Supports publishers, consumers, transactions, probes, and collectors.
- Produces session data and failure/flakiness metadata.
QaaS.Runner.Storage
- Storage abstraction for storing and retrieving serialized session data.
- Built-in implementations: filesystem and S3-compatible backends.
- Shared builder-based configuration for act/assert flows.
QaaS.Runner.Infrastructure
- Small shared cross-project helpers (filesystem and date/time utilities).
Quick Start
Install package:
dotnet add package QaaS.Runner
Upgrade package:
dotnet add package QaaS.Runner --version <target-version>
dotnet restore
ReportPortal
QaaS can publish the same assertion results it already writes to Allure into an existing ReportPortal instance.
Runtime rules:
- QaaS never creates ReportPortal projects, dashboards, filters, users, or API keys.
- Project routing uses
Reporters.ReportPortal.Projectwhen configured; otherwise it falls back toMetaData.Team. - Launches are grouped by resolved endpoint, project, and system.
- One runner-owned ReportPortal publisher validates endpoint/API-key/project access after executions are built and before sessions start. Validation is read-only and failures stop the run with a configuration failure exit code.
- ReportPortal reporters queue assertion results locally during execution. The publisher opens a ReportPortal client only at final publish time, starts the grouped launch, uploads queued items/logs/attachments, finishes the launch, and disposes the client.
ExtraLabelsand other metadata key/value pairs are emitted as ReportPortal attributes so teams can filter by labels such asComponent,Area, orOwner.- Each assertion is published as its own ReportPortal test item together with assertion message/trace, stack trace for broken assertions, session summaries, session failure history, assertion attachments, template YAML, and a generated assertion-context JSON artifact.
- Assertion links configured in QaaS remain active in Allure and are also written into ReportPortal logs.
- If final publishing fails after early validation succeeded, QaaS logs warnings and keeps the assertion-derived exit code unchanged.
- The default launch name is stable and derived from team, system, and sessions, which keeps ReportPortal history grouped without creating new dashboards or projects.
Configuration sources:
| Setting | Default source | Override source | Notes |
|---|---|---|---|
Reporters.ReportPortal.Enabled |
QaaS.Configuration.ReportPortalDefaults.Enabled (false in the public package) |
YAML Reporters.ReportPortal.Enabled |
Enables early-validated, final ReportPortal publishing. |
Reporters.ReportPortal.Endpoint |
QaaS.Configuration.ReportPortalDefaults.ReportPortalUri |
YAML Reporters.ReportPortal.Endpoint |
Required when reporting is enabled. Must point to the ReportPortal base URL or API URL. |
Reporters.ReportPortal.ApiKey |
QaaS.Configuration.ReportPortalDefaults.ReportPortalApiKey |
YAML Reporters.ReportPortal.ApiKey |
Required when reporting is enabled. Must already have write access to the target team projects. |
Reporters.ReportPortal.Project |
MetaData.Team |
YAML Reporters.ReportPortal.Project |
Overrides the target ReportPortal project. If omitted, QaaS uses MetaData.Team. |
Notes:
- Public
QaaS.Configurationkeeps ReportPortal disabled with null endpoint/key. Internal environments can publish a same-IDQaaS.Configurationpackage with internal ReportPortal defaults. - YAML
Reporters.ReportPortalvalues always overrideQaaS.Configurationdefaults for that run. - Launch names are derived from the grouped team, system, and sessions unless you explicitly override the launch name/description in YAML.
- Allure remains active and unchanged when ReportPortal publishing is enabled.
Documentation
- Official docs: thesmoketeam.github.io/qaas-docs
- CI workflow:
.github/workflows/ci.yml - NuGet package page: QaaS.Runner on NuGet
| 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
- AWSSDK.S3 (>= 4.0.19)
- QaaS.Runner.Infrastructure (>= 4.5.3)
- System.IO.Abstractions (>= 22.1.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on QaaS.Runner.Storage:
| Package | Downloads |
|---|---|
|
QaaS.Runner
Execution orchestration for QaaS test workflows. |
|
|
QaaS.Runner.E2ETests
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.5.3 | 45 | 7/1/2026 |
| 4.5.2 | 118 | 6/14/2026 |
| 4.5.1 | 117 | 6/7/2026 |
| 4.5.0 | 112 | 5/27/2026 |
| 4.4.0 | 107 | 5/20/2026 |
| 4.3.3 | 117 | 4/16/2026 |
| 4.3.2 | 121 | 4/15/2026 |
| 4.3.1 | 114 | 4/13/2026 |
| 4.3.0 | 131 | 3/31/2026 |
| 4.2.1 | 186 | 3/28/2026 |
| 4.2.0 | 112 | 3/26/2026 |
| 4.1.1 | 124 | 3/23/2026 |
| 4.1.1-alpha.1 | 56 | 3/22/2026 |
| 4.1.0 | 141 | 3/21/2026 |
| 4.1.0-alpha.27 | 54 | 3/22/2026 |
| 4.1.0-alpha.26 | 56 | 3/22/2026 |
| 4.1.0-alpha.25 | 57 | 3/21/2026 |
| 4.1.0-alpha.23 | 60 | 3/21/2026 |
| 4.1.0-alpha.22 | 61 | 3/17/2026 |
| 4.1.0-alpha.21 | 58 | 3/17/2026 |