Mockito-`when`は代わりに関数を実行します

ブントゥパナ

私はmockitoに慣れていないので、この動作が正常かどうかはわかりません。

これは単純なサンプルクラスです。

open class Example( val example2: Example2) {

    fun getStuff(fileName: String) : String {
           return example2.getFileExtension(fileName)
    }
}

open class Example2(val fileUtils: FileUtils) {

    fun getFileExtension(fileName: String): String {
        return fileUtils.getExtension(fileName)
    }
}

したがって、このコードでテストしようとすると、次のようになります。

class ExampleTest {
    lateinit var example: Example
    val example2 = mock(Example2::class.java)

    @Before
    fun init() {
        example = Example(example2)
    }

    @Test
    fun getFileExtensionTest() {
        val resultExpected = "jpg"

        `when`(example2.getFileExtension(ArgumentMatchers.anyString())).thenReturn("jpg")

        assertThat(example.getStuff("hello.jpg"), `is`(resultExpected))
    }
}

実行return fileUtils.getExtension(fileName)時にNullPointerExceptionが発生します'when'

それで'when'、あざけると思われる機能を実行しています。

ブントゥパナ

わかった!!

Kotlinはデフォルトで関数をfinalにし、mockitoはfinal関数/クラスをモックできません。したがって、ここには2つの解決策があります。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

mockito doThrowは、例外を発生させる代わりにnullを返します

分類Dev

Mockito when()... then()NullPointerException

分類Dev

なぜ我々はMockitoの代わりにwiremockを使用する必要があります

分類Dev

Mockito中にInvocationTargetException

分類Dev

Mockitoは「記録」時間に関する引数をキャプチャし、後で実行時に使用します

分類Dev

Mockitoを使用して、Mockitoに余分な呼び出しを行わずに関数の呼び出し回数を確認する方法

分類Dev

Mockitoはメソッドをスタブする代わりに、メソッドを呼び出しています

分類Dev

org.mockito.Mockito.times(1)に便利な方法はありますか?

分類Dev

Mockito returnsFirstArg()を使用します

分類Dev

Mockito : Testing boolean method with when()..then()

分類Dev

Mockito Spyは、ハードコードされたモックを返す代わりに、spiedクラスの実際のメソッドを呼び出します

分類Dev

Mockitoと例外を期待

分類Dev

Kotlin関数のMockito ArgumentCaptor

分類Dev

Kotlin関数のMockito ArgumentCaptor

分類Dev

Mockitoはスタブメソッドの実行に失敗します

分類Dev

Mockito-void関数に対するthenCallRealMethod()

分類Dev

Mockito-void関数に対するthenCallRealMethod()

分類Dev

Mockito-void関数に対するthenCallRealMethod()

分類Dev

Mockitoはfalseを返します

分類Dev

Mockitoはfalseを返します

分類Dev

Mockitoモックオブジェクトに渡された引数に対してクエリを実行することはできますか?

分類Dev

JUnit + MockitoまたはRestAssured

分類Dev

Java / Mockito:要素を含むリスト引数に「when」を設定します

分類Dev

JavaMailSenderを使用したMockito

分類Dev

Mockitoを使用したMockPreferenceManager

分類Dev

Mockitoを使用する理由

分類Dev

Mockitoを使用する理由

分類Dev

Kotlin + Mockito:nullを取得する

分類Dev

Mockitoは特定のクラス引数に一致します

Related 関連記事

  1. 1

    mockito doThrowは、例外を発生させる代わりにnullを返します

  2. 2

    Mockito when()... then()NullPointerException

  3. 3

    なぜ我々はMockitoの代わりにwiremockを使用する必要があります

  4. 4

    Mockito中にInvocationTargetException

  5. 5

    Mockitoは「記録」時間に関する引数をキャプチャし、後で実行時に使用します

  6. 6

    Mockitoを使用して、Mockitoに余分な呼び出しを行わずに関数の呼び出し回数を確認する方法

  7. 7

    Mockitoはメソッドをスタブする代わりに、メソッドを呼び出しています

  8. 8

    org.mockito.Mockito.times(1)に便利な方法はありますか?

  9. 9

    Mockito returnsFirstArg()を使用します

  10. 10

    Mockito : Testing boolean method with when()..then()

  11. 11

    Mockito Spyは、ハードコードされたモックを返す代わりに、spiedクラスの実際のメソッドを呼び出します

  12. 12

    Mockitoと例外を期待

  13. 13

    Kotlin関数のMockito ArgumentCaptor

  14. 14

    Kotlin関数のMockito ArgumentCaptor

  15. 15

    Mockitoはスタブメソッドの実行に失敗します

  16. 16

    Mockito-void関数に対するthenCallRealMethod()

  17. 17

    Mockito-void関数に対するthenCallRealMethod()

  18. 18

    Mockito-void関数に対するthenCallRealMethod()

  19. 19

    Mockitoはfalseを返します

  20. 20

    Mockitoはfalseを返します

  21. 21

    Mockitoモックオブジェクトに渡された引数に対してクエリを実行することはできますか?

  22. 22

    JUnit + MockitoまたはRestAssured

  23. 23

    Java / Mockito:要素を含むリスト引数に「when」を設定します

  24. 24

    JavaMailSenderを使用したMockito

  25. 25

    Mockitoを使用したMockPreferenceManager

  26. 26

    Mockitoを使用する理由

  27. 27

    Mockitoを使用する理由

  28. 28

    Kotlin + Mockito:nullを取得する

  29. 29

    Mockitoは特定のクラス引数に一致します

ホットタグ

アーカイブ