Kotlin Джунит Мокито Бегун - PullRequest
0 голосов
/ 18 января 2020

Я пытаюсь написать модульные тесты, используя Kotlin и MockK framework. Если тесты написаны с использованием фреймворка junit 5, их можно запустить с использованием MockKExtension.

@ExtendWith(MockKExtension::class)

Но для junit 4 тестов есть бегун MockK? Например:

@RunWith(....)

Без такого бегуна требуется инициализация макетов вручную.

private val a: A = mockK()

Можно ли инициализировать макеты kotlin с помощью аннотации с junit 4?

@MockK
private lateinit var a: A

1 Ответ

1 голос
/ 18 января 2020

Быстрый ответ - нет.

НО. Использовать MockK с JUnit 4 очень просто:

Все, что вам нужно, это код, подобный следующему:

class CarTest {
  @MockK
  lateinit var car1: Car
  @Before
  fun setUp() = MockKAnnotations.init(this, relaxUnitFun = true) // turn relaxUnitFun on for all mocks
  // And so on…

Кстати, это не пример, созданный вручную, он взят из официальной документации

...