simpler & better mocking
Java Groovy HTML
Pull request Compare This branch is 323 commits behind mockito:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Tasty mocking framework for unit tests in Java

build status Build Status Coverage Status MIT License

latest 1.x latest stable 1.x on bintray latest stable 1.x on maven central

latest 2.x Current release Maven Central

Current release

See the release notes page and latest documentation.


Mockito has an automated release system, which imposed some change on how the version numbers work. The versions follow this scheme:

number meaning
major major version, backwards incompatible with the previous major version
minor minor version, backwards compatible with added features
patch patch version, small bug fixes or stylistic improvements
tag optional beta or RC (release candidate). See below.

That means:

  • 2.0.0 and 2.0.0-beta.5 are binary incompatible with 1.10.19.
  • 2.0.0-beta.5 is the fifth release beta of version 2.0.0.
  • 2.0.0-beta.5 could be (but is not necessarily) binary incompatible with version 2.0.0.
  • 2.0.0-RC.1 is binary compatible with release 2.0.0.

Note : During the 2.0 beta phase we unleashed beta builds with the following version schemes, like : 2.0.111-beta, where the build number is placed beore the tag. The current scheme reuses the build number and places it behind the tag. Hence those versions are to be considered as beta builds that happen either before or after a release candidate, but always before the final release.

2.0.111-beta < 2.0.0-beta.112 < 2.0.0-RC.1 < 2.0.0-beta.200 < 2.0.0


There are two different tags: beta or RC. Beta indicates that the version is directly generated from the master branch of the git repository. Beta releases are automatically published whenever we merge a pull request or push a change to the master branch.

When we deem our master status worthy of a release, we publish a release candidate. The release candidate is scheduled to be officially published in the official release a while later. There will be no breaking changes between a release candidate and its equivalent official release. The only changes will include bug fixes or small updates. No additional features will be included.

Looking for support

How to build?

To build locally:

 ./gradlew build

To develop in IntelliJ IDEA you can use built-in Gradle import wizard in IDEA. Alternatively generate the importable IDEA metadata files using:

 ./gradlew idea

Then, open the generated *.ipr file in IDEA.

More information

All you want to know about Mockito is hosted at The Mockito Site which is Open Source and likes pull requests, too.

Want to contribute? Take a look at the Contributing Guide.

Enjoy Mockito!