
A unit test generation extension for Visual Studio that aims to always produce code that compiles - covering the basic cases automatically and preparing as much as it can for the complex cases.
Get the extension from the Visual Studio Marketplace:
Alternatively see the releases on GitHub:
This section contains examples of the output that Unitverse outputs, refreshed every build. Each example aims to demonstrate a particular scenario which is described in the following table.
| Example | Description | 
|---|---|
| Abstract Classes | Demonstrates how Unitverse generates tests when the source class is abstract or contains protected methods, as well as how inheritance chains are accounted for | 
| Async Methods | Demonstrates how tests are generated for async methods, as well as showing how the assertion framework is driven differently for async methods | 
| AutoFixture Mock Generation | Demonstrates how constructor dependencies can be configured using AutoFixture, and mock configuration calls can still be generated | 
| Automatic Mock Generation | Demonstrates how dependencies injected into constructors are tracked, and mock configuration calls emitted for any detected dependencies | 
| Constrained Generic Types | Demonstrates how appropriate types are selected for the generation of tests for generic types with type constraints | 
| Delegate Generation | Demonstrates how Unitverse generates default values for method parameters when the parameter is a delegate type | 
| Extension Methods | Demonstrates how Unitverse generates tests for extension methods | 
| Frameworks - Fluent Assertions | Demonstrates how tests are generated using XUnit for the test framework and NSubstitute for the mocking framework. Also shows using FluentAssertions for the assertion framework. | 
| Frameworks - MSTest & Moq | Demonstrates how tests are generated using MsTest for the test framework and Moq for the mocking framework | 
| Frameworks - MSTest & Moq (with Moq.AutoMock) | Demonstrates how tests are generated using MsTest for the test framework and Moq for the mocking framework, using Moq.AutoMock for object creation | 
| Frameworks - NUnit 3 & FakeItEasy | Demonstrates how tests are generated using NUnit 3 for the test framework and FakeItEasy for the mocking framework | 
| Frameworks - XUnit & JustMock | Demonstrates how tests are generated using XUnit for the test framework and JustMock for the mocking framework | 
| Frameworks - XUnit & NSubstitute | Demonstrates how tests are generated using XUnit for the test framework and NSubstitute for the mocking framework | 
| Generic Methods | Demonstrates how Unitverse generates tests for generic methods | 
| IComparable | Demonstrates the tests generated for a type that implements IComparable | 
| IEquatable | Demonstrates the tests generated for a type that implements IEquatable | 
| Indexers | Demonstrates the tests generated for a type that contains an indexer | 
| Mapping Methods | Shows how unitverse generates a test to verify mappings between input parameter type and return type where the types share property names | 
| Multiple Overloads | Shows how unitverse generates unambiguous names for methods that test multiple overloads of the same source method | 
| Nullable Reference Types | Shows how Unitverse will omit null tests for parameters declared to explicitly accept null | 
    
| Operator Overloading | Shows how Unitverse emits tests for declared unary and binary operators | 
| POCO Initialization | Demonstrates how test values are produced to initialize POCO members when the type is consumed | 
| Property Initialization Checks | Demonstrates how properties that have matching constructor parameters are checked that they are initialized automatically | 
| Record Types (init Properties) | Demonstrates the tests generated for a record type that has properties that have init accessors | 
| Record Types (Primary Constructor) | Demonstrates the tests generated for a simple primary constructor record type | 
| ref & out Parameters | Demonstrates the tests that Unitverse emits when methods contain ref or out parameters | 
    
| Simple POCO | Demonstrates how tests are generated for a simple POCO type | 
| Singletons | Demonstrates how Unitverse attempts to use a static property to get a type instance when the constructor is private | 
| Static Classes | Demonstrates how Unitverse generates tests when the source class is static | 
| StyleCop Compatbility | Demonstrates how tests can be generated with XML documentation and this. prefixed to test class fields | 
    
| Value Generation | Demonstrates how random values are created when required | 
| Value Generation (with AutoFixture) | Demonstrates how Unitverse can be configured to work with AutoFixture for test value generation |