私はテストしたいいくつかのクラス(クラスA)のメソッド - getSomethingAmount()を持っています。 this getSomethingAmount()メソッドのロジックは、set bSetに依存します。これは、クラスAの初期化時にコンストラクタで渡される です。たとえば、 Set bSetにStatus.OKのオブジェクトが2つ含まれている場合、getSomethingAmount()は に戻る必要があります。 Mockitoでこの状態を正しく確認するにはどうすればよいですか? 正しい方法はMockitoで確認する
は今、私はJUnitのアサーションと getSomethingAmount()メソッドの結果を主張し、その後BSETにそれらを入れて、2 Bクラス型のオブジェクトをスタブ - それは、 に動作しますが、それは「真」Mockitoの方法のように私には見えていません。
4
A
答えて
1
予想される動作についての説明から、単体テスト方法のようにかなり固い方法で聞こえます。 「真Mockitoの道」とは、私が何をしたいことのようなものであるとします。これは、設定とテストオブジェクトの初期化は、あなたがテストをしたい任意の副作用を持っていないことを、仮定の下で
Set mockBSet = mock(Set.class);
stub(mockBSet.size()).toReturn(2);
A testObjectA = new A(mockBSet);
Assert.assertEquals(testObjectA.getSomethingAmount(), 2);
考慮に入れる(たとえば、常にデフォルトの "somethings"を追加します)。この場合、スタブを外してテスト中のメソッドをアサートすると、セットのサイズに等しい値が返されます。
1
コレクションではなくオブジェクトをモックします。それ以外の場合、テストは壊れやすくなり、実装を変更すると中断されます。たとえば、サイズメソッドを使用するのではなく、セット内のオブジェクトをループする必要があると判断した場合などです。
B b = mock(B.class);
A target = new A(new HashSet<B>(Arrays.asList(b, b)));
Assert.assertSame(2, target.getSomethingAmount());
関連する問題
- 1. Mockitoスパイオブジェクトの返却方法を確認してください
- 2. Mockito - スタブを確認する
- 3. Falseを確認する正しい方法は何ですか?
- 4. mockitoを使用してkotlinでコールセッターを確認する方法は?
- 5. Mockitoを使って確認する方法
- 6. Linuxで正しいSSIDパスワードを確認する方法
- 7. 「?」を確認する正しい方法は何ですか? case文で
- 8. アドレスを確認する方法はAndroidで正しいですか?
- 9. 単語jsアドインのテーブルサポートを確認する正しい方法
- 10. PHPExcelで列ヘッダーが正しいかどうかを確認する方法は?
- 11. 正しい拡張方法の解像度を確認する方法
- 12. mockitoを使用して例外がスローされないことを確認する方法は?
- 13. Mockito、最後に呼び出されたメソッドのパラメータを確認する方法
- 14. ReactMongo Mockitoを使ってMockitoを使って例外を確認しました
- 15. オブジェクトがSyntheticEventかどうかを確認する正しい方法は?
- 16. mockitoを使用しているときに他のオブジェクトを確認する方法
- 17. Mockitoとの機能インタフェースを介してメソッド呼び出しを確認する方法は?
- 18. パスワードを確認する方法cakephpをハッシュで確認する方法
- 19. Promise.promisifyで正しい "これ"を確実にする方法は?
- 20. Mockitoを使ってアンドロイドでORMを正しくテストする方法は?
- 21. RxJava2での相互作用を確認する方法Mockitoを使用して観察可能
- 22. JSで正しいvarを確認するには?
- 23. Spotfire 6.5:検索機能で正確な値を確認する方法
- 24. 私はcodeigniterのページをリダイレクトする方法を正しく確認した後
- 25. ダブを確認する方法と表示しない方法
- 26. 2つのフロートが正確に等しいことを確認する方法はありますか?
- 27. テキストファイルの文字列が正しいかどうかを確認する方法
- 28. VBA数式が正しいかどうかを確認する方法
- 29. 数学結果が正しいかどうかを確認する方法
- 30. Firebaseアレイの特定の値を確認する正しい方法