Popularity
9.0
Growing
Activity
5.7
Declining
1,988
48
132

Programming language: Kotlin
Tags: Tests    
Latest version: v2.1.0

mockito-kotlin alternatives and similar libraries

Based on the "Tests" category

Do you think we are missing an alternative of mockito-kotlin or a related project?

Add another 'Tests' Library

README

Mockito-Kotlin

Download

A small library that provides helper functions to work with Mockito in Kotlin.

Install

Mockito-Kotlin is available on Maven Central and JCenter. For Gradle users, add the following to your build.gradle, replacing x.x.x with the latest version:

testImplementation "com.nhaarman.mockitokotlin2:mockito-kotlin:x.x.x"

Example

A test using Mockito-Kotlin typically looks like the following:

@Test
fun doAction_doesSomething(){ 
  /* Given */
  val mock = mock<MyClass> {
    on { getText() } doReturn "text"
  }
  val classUnderTest = ClassUnderTest(mock)

  /* When */
  classUnderTest.doAction()

  /* Then */
  verify(mock).doSomething(any())
}

For more info and samples, see the Wiki.

Building

Mockito-Kotlin is built with Gradle.

  • ./gradlew build builds the project
  • ./gradlew publishToMavenLocal installs the maven artifacts in your local repository
  • ./gradlew assemble && ./gradlew test runs the test suite (See Testing below)

Versioning

Mockito-Kotlin roughly follows SEMVER; version names are parsed from git tags using git describe.

Testing

Mockito-Kotlin's test suite is located in a separate tests module, to allow running the tests using several Kotlin versions whilst still keeping the base module at a recent version.

Testing thus must be done in two stages: one to build the base artifact to test against, and the actual execution of the tests against the built artifact:

  • ./gradlew assemble builds the base artifact
  • ./gradlew test runs the tests against the built artifact.

Usually it is enough to test only using the default Kotlin versions; CI will test against multiple versions. If you want to test using a different Kotlin version locally, set an environment variable KOTLIN_VERSION and run the tests.