JMockでクラスを模擬してメソッドをテストするコードを記述しようとしていますが、このメソッドは内部的に3つの異なるメソッドを呼びます(そのうちの1つはプライベートメソッドです)。私は3つの内部的な方法のすべてに期待を寄せました。それから私はテスト中のメソッドを呼び出します。テストケースでは、プライベートメソッドが呼び出されると予想され、呼び出されなかったというエラーが返されます。 2つの内部メソッド(デフォルトのアクセス指定子を持つ)がうまくいきましたが、プライベートメソッドは嘲笑されず、実際にコントロールが実際のプライベートメソッドの内側に届いて問題が発生しています。プライベートメソッドのアクセス指定子をデフォルトアクセスに変更すると、すべて正常に動作しますが、そのようにしたくありません。誰かがこの動作を説明し、この問題を解決する方法を教えてください。JMockがプライベートメソッドを模擬することができません
1
A
答えて
1
JMockでは、プライベートメソッドをモックできません。 Mockito cannot mock private methods either。プライベートメソッドを実際にモックする場合は、PowerMockフレームワークを使用する必要があります。
0
Jmockitも使用できます。このユースケースで使用できる優れたライブラリです。あなたが使用できるキーワード: "Deencapsulation"。
関連する問題
- 1. jmockitで夕食のプライベートメソッドを模擬することができます
- 2. メソッドを模擬することができません
- 3. Mockitoはこのクラスを模擬することができません。JestClient
- 4. Emberfireとのセッションを模擬することができません
- 5. サービスを模擬して例外をスローすることができません
- 6. 模擬クラスからテストメソッドを実行することができません
- 7. JSTMIN-Karmaの$ httpbackend whenPOSTを模擬することができません
- 8. 模擬シングルトンのメソッドが異なるテストケースで異なる動作をすることはできません
- 9. アトリビュートディレクティブをAngular2 +で模擬することはできますか?
- 10. Pythonで関数呼び出しを模擬することができません
- 11. pytestを使用して模擬テストをインポートできません
- 12. 私のコンピュータ上で文脈を模擬することができない
- 13. プロパティはjmockテストにファイルを読んでから返された値を模擬する方法
- 14. 模擬ジャスミンスローズ法の角度サービスが見つかりません
- 15. Pythonユニットテスト模擬が正しくありません
- 16. PHPUnitでインタフェース実装を模擬することはできますか?
- 17. 私はプライベートメソッドを呼び出すことができますか?
- 18. オブジェクト属性を模擬する方法、私はアクセスできませんか?
- 19. PHPUnitファイル内にプライベートメソッドを作成することはできませんか?
- 20. ロビウムとプライベートメソッドを使用してアンドロイドでスクリーンショットを取ることができません
- 21. ユニットテストでアンドロイドサービスを模擬することは可能ですか?
- 22. このクラスを模擬するには?
- 23. typescriptデコレータを模擬することは可能ですか?
- 24. NLogログメソッドを模擬することは可能ですか?
- 25. ADFSを模擬することは可能ですか?
- 26. ラムダ式を模擬することは可能ですか?
- 27. Django Behaveテストを模擬することは可能ですか?
- 28. ミュールユニットのテストでメッセージに富んだ人を模擬することはできますか?
- 29. 模擬JSONObjectは追加された値を取得できません
- 30. feignクライアントの模擬実装はオートワイヤではありません
これを行うプライベートメソッドは何ですか?それらを嘲笑したいということですか? –
メソッドにビジネスロジックがありましたが、今ではJMockと動作するようにアクセス指定を変更しました – Gaurav
ロジックを実行する際の害は何ですか?お互いに逃れるために2つ(またはそれ以上)のクラスを持っていること。 –