Siemens.AspNet.MsTest.Sdk 0.1.0-alpha.173

Prefix Reserved
This is a prerelease version of Siemens.AspNet.MsTest.Sdk.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Siemens.AspNet.MsTest.Sdk --version 0.1.0-alpha.173
                    
NuGet\Install-Package Siemens.AspNet.MsTest.Sdk -Version 0.1.0-alpha.173
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Siemens.AspNet.MsTest.Sdk" Version="0.1.0-alpha.173" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Siemens.AspNet.MsTest.Sdk" Version="0.1.0-alpha.173" />
                    
Directory.Packages.props
<PackageReference Include="Siemens.AspNet.MsTest.Sdk" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Siemens.AspNet.MsTest.Sdk --version 0.1.0-alpha.173
                    
#r "nuget: Siemens.AspNet.MsTest.Sdk, 0.1.0-alpha.173"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Siemens.AspNet.MsTest.Sdk@0.1.0-alpha.173
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Siemens.AspNet.MsTest.Sdk&version=0.1.0-alpha.173&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Siemens.AspNet.MsTest.Sdk&version=0.1.0-alpha.173&prerelease
                    
Install as a Cake Tool

Siemens.AspNet.MsTest.Sdk

This NuGet package provides utilities for API testing with a focus on AWS DynamoDB and Docker. It helps set up DynamoDB services within a Docker container for testing purposes and includes additional features to manage environment variables and API interactions.

Features

  • DynamoDB Helper: Set up and interact with AWS DynamoDB in a Docker container.
  • Docker Helper: Spin up Docker containers for AWS DynamoDB.
  • API Test Utilities: Provides utilities for setting up API testing environments, including the configuration of environment variables.
  • Support for Multiple Environments: Easily configure testing environments, such as Development, Staging, or Production, with environment variables.

Installation

You can install this package using the following NuGet command:

dotnet add package Siemens.AspNet.MsTest.Sdk

Setup Example

API Test Base Setup

The following example demonstrates how to initialize the testing environment, configure DynamoDB, and set up environment variables.

/// <summary>
///     The base class for API testing, providing utilities for setting up and interacting with the API.
/// </summary>
private static ApiTestBase<Program> _apiTestBase = null!;

protected static HttpClient Client { get; private set; } = null!;

private static readonly IDynamoDbService DynamoDbService = DynamoDbServiceFactory.Create();

[AssemblyInitialize]
public static async Task AssemblyInitializeAsync(TestContext _)
{
    // 0. Ensure that previous tests were not interrupted
    await AssemblyCleanupAsync().ConfigureAwait(false);

    // 1. Setup DynamoDB service
    await DynamoDbService.SetupAsync<Program>().ConfigureAwait(false);

    // 2. Load environment variables
    var environmentVariables = EmbeddedFile.GetFileContentFrom("Properties.EnvironmentVariables.json")
                                           .FromJsonStringAs<Dictionary<string, string>>()
                                           .Select(keyValue => (keyValue.Key, keyValue.Value)).ToArray();

    // 3. Setup API test base environment
    _apiTestBase = new ApiTestBase<Program>("Development", // The environment name
                                            (_, _) =>
                                            {
                                            }, // Register services action
                                            environmentVariables); // Configure environment variables  

    // Additional setup logic can be added here
}

DynamoDB Docker Setup

The package includes utilities to set up a Docker container with AWS DynamoDB to simulate a real database environment for testing.

// Factory creation
// Sample code for running DynamoDB in a Docker container
var DynamoDbService = DynamoDbServiceFactory.Create();
// Via service collection
serviceCollection.AddDynamoDbService();

Contributing

Feel free to open issues or submit pull requests. If you are interested in contributing, please ensure to follow the coding standards and best practices used in this repository.

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.0-alpha.283 200 9/19/2025
0.1.0-alpha.282 512 9/19/2025
0.1.0-alpha.281 299 9/16/2025
0.1.0-alpha.280 250 9/16/2025
0.1.0-alpha.279 252 9/16/2025
0.1.0-alpha.278 254 9/16/2025
0.1.0-alpha.275 15,760 9/3/2025
0.1.0-alpha.274 337 9/2/2025
0.1.0-alpha.273 196 9/1/2025
0.1.0-alpha.272 114 9/1/2025
0.1.0-alpha.271 169 8/29/2025
0.1.0-alpha.270 152 8/29/2025
0.1.0-alpha.269 153 8/29/2025
0.1.0-alpha.268 161 8/29/2025
0.1.0-alpha.267 163 8/27/2025
0.1.0-alpha.266 182 8/27/2025
0.1.0-alpha.264 245 8/22/2025
0.1.0-alpha.263 71 8/22/2025
0.1.0-alpha.262 77 8/22/2025
0.1.0-alpha.261 91 8/22/2025
0.1.0-alpha.260 97 8/22/2025
0.1.0-alpha.259 97 8/22/2025
0.1.0-alpha.258 195 8/19/2025
0.1.0-alpha.257 189 8/18/2025
0.1.0-alpha.246 152 8/14/2025
0.1.0-alpha.245 123 8/14/2025
0.1.0-alpha.244 154 8/14/2025
0.1.0-alpha.243 125 8/14/2025
0.1.0-alpha.238 124 8/12/2025
0.1.0-alpha.237 442 8/6/2025
0.1.0-alpha.236 229 8/5/2025
0.1.0-alpha.235 200 8/5/2025
0.1.0-alpha.234 203 8/5/2025
0.1.0-alpha.233 164 8/4/2025
0.1.0-alpha.232 178 8/4/2025
0.1.0-alpha.231 72 8/1/2025
0.1.0-alpha.230 73 8/1/2025
0.1.0-alpha.229 94 7/31/2025
0.1.0-alpha.228 92 7/31/2025
0.1.0-alpha.227 97 7/31/2025
0.1.0-alpha.225 95 7/31/2025
0.1.0-alpha.224 95 7/30/2025
0.1.0-alpha.222 285 7/16/2025
0.1.0-alpha.219 162 7/14/2025
0.1.0-alpha.217 89 7/11/2025
0.1.0-alpha.212 159 7/8/2025
0.1.0-alpha.211 170 7/3/2025
0.1.0-alpha.207 118 7/3/2025
0.1.0-alpha.206 280 6/30/2025
0.1.0-alpha.205 105 6/27/2025
0.1.0-alpha.202 99 6/27/2025
0.1.0-alpha.200 104 6/27/2025
0.1.0-alpha.198 103 6/27/2025
0.1.0-alpha.196 106 6/27/2025
0.1.0-alpha.195 104 6/27/2025
0.1.0-alpha.194 102 6/27/2025
0.1.0-alpha.193 99 6/27/2025
0.1.0-alpha.192 104 6/27/2025
0.1.0-alpha.191 101 6/27/2025
0.1.0-alpha.189 117 6/26/2025
0.1.0-alpha.188 187 6/26/2025
0.1.0-alpha.187 123 6/26/2025
0.1.0-alpha.186 136 6/26/2025
0.1.0-alpha.185 122 6/26/2025
0.1.0-alpha.184 120 6/26/2025
0.1.0-alpha.183 119 6/26/2025
0.1.0-alpha.182 117 6/26/2025
0.1.0-alpha.181 133 6/25/2025
0.1.0-alpha.180 125 6/24/2025
0.1.0-alpha.179 124 6/23/2025
0.1.0-alpha.178 199 6/23/2025
0.1.0-alpha.176 124 6/23/2025
0.1.0-alpha.174 128 6/19/2025
0.1.0-alpha.173 160 6/19/2025
0.1.0-alpha.172 124 6/17/2025
0.1.0-alpha.171 199 6/16/2025
0.1.0-alpha.169 123 6/16/2025
0.1.0-alpha.165 380 6/13/2025
0.1.0-alpha.164 232 6/13/2025
0.1.0-alpha.163 235 6/13/2025
0.1.0-alpha.160 273 6/12/2025
0.1.0-alpha.159 364 6/11/2025
0.1.0-alpha.158 269 6/11/2025
0.1.0-alpha.143 263 6/11/2025
0.1.0-alpha.142 268 6/11/2025
0.1.0-alpha.140 265 6/11/2025
0.1.0-alpha.139 320 6/10/2025
0.1.0-alpha.138 262 6/9/2025
0.1.0-alpha.137 56 6/7/2025
0.1.0-alpha.136 50 6/7/2025
0.1.0-alpha.135 80 6/6/2025
0.1.0-alpha.134 80 6/6/2025
0.1.0-alpha.130 120 6/5/2025
0.1.0-alpha.129 130 6/4/2025
0.1.0-alpha.128 113 6/4/2025
0.1.0-alpha.122 185 6/3/2025
0.1.0-alpha.121 126 6/1/2025
0.1.0-alpha.120 92 6/1/2025
0.1.0-alpha.118 124 5/28/2025
0.1.0-alpha.117 124 5/28/2025
0.1.0-alpha.116 127 5/28/2025
0.1.0-alpha.115 134 5/26/2025
0.1.0-alpha.114 160 5/22/2025
0.1.0-alpha.112 129 5/21/2025
0.1.0-alpha.111 128 5/20/2025
0.1.0-alpha.108 184 5/19/2025
0.1.0-alpha.104 197 5/18/2025
0.1.0-alpha.102 293 5/14/2025
0.1.0-alpha.101 207 5/14/2025
0.1.0-alpha.100 212 5/12/2025
0.1.0-alpha.99 238 5/12/2025
0.1.0-alpha.98 51 5/10/2025
0.1.0-alpha.97 55 5/10/2025
0.1.0-alpha.86 142 5/8/2025
0.1.0-alpha.85 131 5/8/2025
0.1.0-alpha.84 121 5/8/2025
0.1.0-alpha.82 135 5/7/2025
0.1.0-alpha.81 131 5/6/2025
0.1.0-alpha.76 60 5/3/2025
0.1.0-alpha.75 84 5/2/2025
0.1.0-alpha.74 80 5/2/2025
0.1.0-alpha.56 133 4/28/2025
0.1.0-alpha.55 142 4/28/2025
0.1.0-alpha.54 207 4/14/2025
0.1.0-alpha.53 189 4/14/2025
0.1.0-alpha.48 223 4/14/2025
0.1.0-alpha.47 169 4/9/2025
0.1.0-alpha.46 142 4/9/2025
0.1.0-alpha.44 152 4/7/2025
0.1.0-alpha.41 139 4/7/2025
0.1.0-alpha.40 141 4/7/2025
0.1.0-alpha.39 85 4/4/2025
0.1.0-alpha.38 99 4/4/2025
0.1.0-alpha.37 143 4/4/2025