Unit Testing Pulumi programs in C#
An example that applies unit testing to C# and Azure resources.
This example lives in the pulumi/examples repository. Check out just this directory to use it:
git clone --filter=blob:none --sparse https://github.com/pulumi/examples pulumi-examplesgit -C pulumi-examples sparse-checkout set testing-unit-cs-mockscd pulumi-examples/testing-unit-cs-mocksAn example of writing mock-based unit tests with both infrastructure definition and tests written in C#. The example uses the NUnit test framework to define and run the tests and FluentAssertions for assertions.
It defines a stack that deploys a static website to Azure Storage and a suite of tests to validate the deployment. It also shows several examples of changing mocks for the testing needs, including mocking an Invoke (data source) call - ListStorageAccountKeys - whose result contains a nested array of complex objects.
Prerequisites#
Running the tests#
Run the tests:
dotnet test
Microsoft (R) Test Execution Command Line Tool Version 16.3.0Copyright (c) Microsoft Corporation. All rights reserved.
Starting test execution, please wait...
A total of 6 test files matched the specified pattern.
Test Run Successful.Total tests: 6 Passed: 6 Total time: 1.2167 SecondsFurther steps#
Learn more about testing Pulumi programs: