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

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.117
                    
NuGet\Install-Package Siemens.AspNet.MsTest.Sdk -Version 0.1.0-alpha.117
                    
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.117" />
                    
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.117" />
                    
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.117
                    
#r "nuget: Siemens.AspNet.MsTest.Sdk, 0.1.0-alpha.117"
                    
#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.117
                    
#: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.117&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Siemens.AspNet.MsTest.Sdk&version=0.1.0-alpha.117&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.282 0 9/19/2025
0.1.0-alpha.281 61 9/16/2025
0.1.0-alpha.280 33 9/16/2025
0.1.0-alpha.279 34 9/16/2025
0.1.0-alpha.278 37 9/16/2025
0.1.0-alpha.275 8,126 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 153 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 439 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 94 7/31/2025
0.1.0-alpha.224 95 7/30/2025
0.1.0-alpha.222 253 7/16/2025
0.1.0-alpha.219 161 7/14/2025
0.1.0-alpha.217 88 7/11/2025
0.1.0-alpha.212 158 7/8/2025
0.1.0-alpha.211 169 7/3/2025
0.1.0-alpha.207 117 7/3/2025
0.1.0-alpha.206 279 6/30/2025
0.1.0-alpha.205 104 6/27/2025
0.1.0-alpha.202 98 6/27/2025
0.1.0-alpha.200 103 6/27/2025
0.1.0-alpha.198 102 6/27/2025
0.1.0-alpha.196 105 6/27/2025
0.1.0-alpha.195 103 6/27/2025
0.1.0-alpha.194 101 6/27/2025
0.1.0-alpha.193 98 6/27/2025
0.1.0-alpha.192 103 6/27/2025
0.1.0-alpha.191 100 6/27/2025
0.1.0-alpha.189 116 6/26/2025
0.1.0-alpha.188 180 6/26/2025
0.1.0-alpha.187 122 6/26/2025
0.1.0-alpha.186 135 6/26/2025
0.1.0-alpha.185 121 6/26/2025
0.1.0-alpha.184 119 6/26/2025
0.1.0-alpha.183 118 6/26/2025
0.1.0-alpha.182 116 6/26/2025
0.1.0-alpha.181 132 6/25/2025
0.1.0-alpha.180 124 6/24/2025
0.1.0-alpha.179 123 6/23/2025
0.1.0-alpha.178 197 6/23/2025
0.1.0-alpha.176 123 6/23/2025
0.1.0-alpha.174 126 6/19/2025
0.1.0-alpha.173 159 6/19/2025
0.1.0-alpha.172 123 6/17/2025
0.1.0-alpha.171 197 6/16/2025
0.1.0-alpha.169 122 6/16/2025
0.1.0-alpha.165 377 6/13/2025
0.1.0-alpha.164 230 6/13/2025
0.1.0-alpha.163 235 6/13/2025
0.1.0-alpha.160 272 6/12/2025
0.1.0-alpha.159 363 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 264 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 129 6/4/2025
0.1.0-alpha.128 113 6/4/2025
0.1.0-alpha.122 184 6/3/2025
0.1.0-alpha.121 125 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 196 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 50 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 221 4/14/2025
0.1.0-alpha.47 169 4/9/2025
0.1.0-alpha.46 141 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 140 4/7/2025
0.1.0-alpha.39 85 4/4/2025
0.1.0-alpha.38 98 4/4/2025
0.1.0-alpha.37 143 4/4/2025