mockito-kotlin
spek
Our great sponsors
mockito-kotlin | spek | |
---|---|---|
6 | 2 | |
3,071 | 2,223 | |
0.0% | 0.0% | |
6.1 | 0.0 | |
18 days ago | 5 months ago | |
Kotlin | Kotlin | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
mockito-kotlin
-
Best practices for Unit Testing Android Apps with Mockk, Kotest and others
As you can see, I create mockUsersRepository object using mock( function. Then, in setup() method, I set up this repository in such a way so that it would return a list of hardcoded values. After this, on top of everything else, I check if, for mockUsersRepository object, getUsers method was called with verify function, in the test method. It’s important to note that Mockito is a very old framework and was originally written for Java. When Kotlin appeared, it turned out that out of the box this framework can work with some limitations, which is why an extension, mockito-kotlin, was released. The example above was written with it. Another Mockito’s limitation was that it was impossible to mock final classes and static methods, and all classes are final by default in Kotlin. Currently, this is solved through mockito-inline but, before, it was a serious limitation. In respect to Java development, there was and is an alternative for Android developers, PowerMock.
-
Why don't you write unit tests and integration tests to ksp project
In the demo project, I used junit and mockito. One thing we need to pre-learn do the unit test, that is ksp class diagram.
-
Spring with java vs Spring with kotlin
What's wrong with Mockito for Kotlin?
-
From Java to Kotlin. There and back again
Mockito does not work correctly with Kotlin types out of the box. Spring recommends using Mockk. There is also a special module for Mockito, which adds support for Kotlin - Mockito-Kotlin.
- Avoiding Stringly-typed in Kotlin
- Argument(s) are different! Wanted: Unit test
spek
-
Evolution of unit tests in Android
Spek is a unit testing framework for Kotlin which supports Specification and Gherkin style.
-
Best practices for Unit Testing Android Apps with Mockk, Kotest and others
The describe-it style is mainly used to write Spek tests. describe structure allows us to create a group of tests describing a specific method, and, in it, a specific scenario for the method is written. But it is also possible to use the GivenWhenThen style. Unfortunately, the framework doesn’t have embedded coroutine support, so we have to always use runBlockingTest { } for suspended functions. There is a ticket with this feature request on Github, but it seems it was never completed.
What are some alternatives?
mockk - mocking library for Kotlin
Kotest - Powerful, elegant and flexible test framework for Kotlin with additional assertions, property testing and data driven testing
kotlin-faker - Port of a popular ruby faker gem written in kotlin. Generate realistically looking fake data such as names, addresses, banking details, and many more, that can be used for testing and data anonymization purposes.
expekt - BDD assertion library for Kotlin
balin - Balin is an automation library for Kotlin. It's basically a Selenium-WebDriver wrapper inspired by Geb.
aspen - Aspen is a simple test runner for Kotlin that allows you to write tests using your own DSL.
mock-fuel - JUnit 5 extension to easily test with the http client Fuel for Kotlin
strikt - An assertion library for Kotlin
kspec - Kotlin Specification Framework