JustMock 2022.3.1109.1

The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org. Prefix Reserved
.NET Core 2.0 .NET Framework 4.5
dotnet add package JustMock --version 2022.3.1109.1
NuGet\Install-Package JustMock -Version 2022.3.1109.1
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="JustMock" Version="2022.3.1109.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add JustMock --version 2022.3.1109.1
#r "nuget: JustMock, 2022.3.1109.1"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install JustMock as a Cake Addin
#addin nuget:?package=JustMock&version=2022.3.1109.1

// Install JustMock as a Cake Tool
#tool nuget:?package=JustMock&version=2022.3.1109.1

JustMock Lite

JustMock Lite is the most powerful free mocking framework available for .NET developers who practice unit testing and want to deliver exceptional software. It cuts your development time and helps you create better unit tests. It also enables you to perform fast and controlled tests that are independent of external dependencies like databases, web services or proprietary code. For more information, refer to the git repository or our JustMock Lite website.

JustMock Lite Key Features

  • AAA pattern – JustMockLite uses the Arrange Act Assert (AAA) pattern.
  • Error-Free Mocking - Thanks to its strongly typed framework API, JustMock detects errors in your mock definitions and highlights them in Visual Studio. The JustMock Lite API fully leverages Visual Studio IntelliSense to make it easy to start mocking.
  • Mock interfaces - Allows you to test public interfaces.
  • Mock classes - Allows you to test public classes.
  • Mock properties - Allows you to test the property getter and setter.
  • Mock and rise events - Allows you to test events.
  • Control mock behavior - Allows you to control the default behavior of a mock whether be to do nothing, call the original code or throw an exception.
  • Assert call occurrences - Allows you to determine how many times a call has occurred.
  • Recursive mocking - Еnable you to mock members that are obtained as a result of "chained" calls on a mock.
  • Sequential mocking - Allows you to return different values on the same or different consecutive calls to one and the same type.
  • Support for out/ref - Mock methods accepting our and ref parameters.
  • Support for Generics - Mock generic classes and methods.
  • Fluent mocking - Allows you setup your test arrangements and expectations from your mock object.
  • Being able to seamlessly upgrade to JustMock - No rework of test is required. Simply install JustMock and make sure your project is referencing the correct assemblies.
  • And many more.

JustMock

JustMock Lite is backed by a commercial version JustMock which is more advanced mocking framework based on JustMock Lite. JustMock is for developers who doesn't want to have any restrictions and be able to mock literally everything. For more information visit our JustMock website.

JustMock Key Features

  • All key features from JustMock Lite
  • Mock non-public members and types - Allows you to mock non-public members or types.
  • Mock non-virtual methods - Allows you to mock non-virtual methods.
  • Mock extension method - Allows you to mock extension methods.
  • Mock static classes, methods, and properties - Allows you to mock static constructors, methods and properties getters and setters, set expectations and verify results.
  • Mock sealed classes - Allows you to mock sealed classes and calls to their methods/properties
  • Mock partial mocking - Allows you keep your original object and mock only the required methods.
  • Mock LINQ queries - Allows you to mock LINQ queries with custom select.
  • Mock DLL imports - Allows you to mock imported functions (decorated with the [DLLImport()] attribute)
  • Mock Ref return values and ref locals - Allows you to arrange and verify Ref return and Ref locals
  • Mock Local functions - Allows you mock Local functions.
  • Mock MsCorLib members - Allows you to mock types and methods from .NET Framework/.NET Core, i.e. from MsCorLib.
  • Mock Microsoft SharePoint - Allows you to mock types and method from SharePoint.
  • Mock Microsoft EntityFramework - Allows you to easily create in-memory mocks of the DbSet and DbContext types.
  • And many more

Examples

[TestMethod]
public void TestBookService()
{
    // Arrange - initialize objects and prepare data.
    var repository = Mock.Create<IBookRepository>();
    var expectedBook = new Book { Title = "Adventures" };
    var service = new BookService(repository);
    
    // prepare an expectation of what the GetWhere method should do when called with the specified parameters
    // and how many times the call is supposed to occur.
    Mock.Arrange(() => repository.GetWhere(book => book.Id == 1)).Returns(expectedBook).OccursOnce();

    // Act - execute the tested logic.
    Book actualBook = service.GetSingleBook(1);

    // Assert - verify that the actual result is equal to the expected.
    Assert.AreEqual(expectedBook.Title, actualBook.Title);
}

Supported Frameworks

  • .Net Framework 4.5+ and later.
  • .NET 5, .NET 6
  • .Net Core 2.0 and later.

Documentation

JustMock Lite and JustMock are coming with extensive Documentation and examples that will help you quickly get started with the framework.

Feedback

JustMock Lite is constantly improved through customer interaction and feedback. If you want to suggest a new feature, bug report or vote for a popular one, please visit our Feedback Portal.

Happy mocking!

Product Versions
.NET net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows net7.0 net7.0-android net7.0-ios net7.0-maccatalyst net7.0-macos net7.0-tvos net7.0-windows
.NET Core netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1
.NET Framework net45 net451 net452 net46 net461 net462 net463 net47 net471 net472 net48
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on JustMock:

Package Downloads
JustMock.EntityFramework The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

Mock DbSet and DbContext mocking amenities for JustMock Lite.

JustMock.Autofac The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

Mocking container extension for unit-testing Autofac-based projects.

JustMock.Unity The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

Mocking container extension for unit-testing Unity-based projects.

JustMock.Mef The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

Export provider and mocking container for unit-testing MEF-based projects.

ShopAtHome.UnitTestHelper

A collection of stub interface builders and test data creators, helpful in creating robust and easily maintained suites of unit tests

GitHub repositories (10)

Showing the top 5 popular GitHub repositories that depend on JustMock:

Repository Stars
AutomateThePlanet/AutomateThePlanet-Learning-Series
Automate The Planet Series Source Code
axzxs2001/Asp.NetCoreExperiment
原来所有项目都移动到**OleVersion**目录下进行保留。新的案例装以.net 5.0为主,一部分对以前案例进行升级,一部分将以前的工作经验总结出来,以供大家参考!
shahedc/NetLearnerApp
NetLearner: The Internet Resource Learning Helper built with ASP .NET Core
ardalis/ddd-vet-sample
A sample meant to demonstrate domain driven design using a veterinary hospital management system.
telerik/blazor-ui
A collection of examples related to Telerik UI for Blazor Components: https://www.telerik.com/blazor-ui
Version Downloads Last updated
2022.3.1109.1 937 11/14/2022
2022.3.912.3 5,487 9/14/2022
2022.2.621.1 11,691 6/22/2022
2022.2.511.1 8,941 5/11/2022
2022.1.223.1 18,332 2/23/2022
2022.1.119.1 26,810 1/19/2022
2021.3.1110.2 22,640 11/10/2021
2021.3.915.1 17,373 9/16/2021
2021.2.615.4 44,358 6/16/2021
2021.2.511.1 9,707 5/12/2021
2021.1.222.1 55,597 2/24/2021
2021.1.115.1 12,865 1/20/2021
2020.3.1124.2 21,899 11/24/2020
2020.3.1019.2 23,466 10/21/2020
2020.3.916.1 21,093 9/16/2020
2020.2.616.1 51,246 6/17/2020
2020.2.513.1 17,274 5/13/2020
2020.1.113.1 52,367 1/15/2020
2019.3.910.4 99,699 9/18/2019
2019.2.620.1 105,436 6/20/2019
2019.2.508.1 29,696 5/15/2019
2019.1.207.1 45,522 2/7/2019
2019.1.115.2 10,353 1/16/2019
2018.3.912.1 137,510 9/12/2018
2018.1.117.2 170,426 1/18/2018
2017.2.821.1 82,539 8/24/2017
2016.2.426.1 164,250 5/4/2016
2016.1.307.3 42,722 3/7/2016
2016.1.107.7 30,027 1/13/2016
2015.3.929.5 18,964 9/30/2015
2015.2.715.1 72,020 7/21/2015
2015.2.616.2 19,162 6/24/2015
2015.1.224.3 29,569 2/25/2015
2015.1.205.2 1,898 2/16/2015
2014.3.1204.3 15,653 12/4/2014
2014.3.1021.2 2,936 10/27/2014
2014.2.811.1 11,874 8/11/2014
2014.2.722.1 2,140 7/22/2014
2014.2.609.3 3,189 6/13/2014
2014.1.1623.1 5,697 4/24/2014
2014.1.1609.1 3,270 4/15/2014
2014.1.1519.1 2,872 3/31/2014
2014.1.1424.1 8,427 2/26/2014
2014.1.1418.1 2,038 2/19/2014
2014.1.1317.4 1,996 1/28/2014
2014.1.1307.2 1,830 1/9/2014
2014.1.1217.4 2,177 12/18/2013
2014.1.1204.1 1,870 12/4/2013
2013.3.1119.2 2,560 11/20/2013
2013.3.1101.2 3,112 11/1/2013
2013.3.1015 3,200 10/16/2013
2013.3.1009 1,687 10/10/2013
2013.3.925 1,644 9/26/2013
2013.3.904 2,241 9/6/2013
2013.3.819 9,040 8/19/2013
2013.3.813 1,294 8/13/2013
2013.2.611 7,736 6/12/2013
2013.2.603 1,424 6/3/2013
2013.2.527 1,367 5/27/2013
2013.2.522 1,384 5/22/2013
2013.1.507 1,351 5/8/2013
2013.1.315 4,033 3/18/2013
2013.1.220 2,656 2/20/2013
2013.1.125.1 1,709 1/25/2013
2012.3.1220 1,578 12/21/2012
2012.3.1016 2,211 10/17/2012
2012.2.813 3,730 8/13/2012
2012.1.608 2,388 6/11/2012
2012.1.508 1,436 5/8/2012
2012.1.321 1,570 3/21/2012
2012.1.229 1,519 3/1/2012
2012.1.215 1,402 2/15/2012
2011.3.1323 1,432 1/23/2012
2011.3.1222 1,487 12/22/2011
2011.3.1116 1,623 11/16/2011
2011.2.921 1,635 9/29/2011
2011.2.713 2,050 7/22/2011
2011.1.620 1,589 6/20/2011
2011.1.331 1,855 4/7/2011
2011.1.315 2,119 3/16/2011
2010.3.1215 3,221 1/7/2011