1

私は次のクラスを持っています:

class MyClass {

  public void doIt() {
     methodOne();
     methodTwo();
     methodThree();
  }

  private void methodOne() {
     // ...
  }

  // rest of methods similar...

}

私の意図は、doIt() を呼び出すと、メソッド metodOne()、methodTwo()、および methodThree() がこの順序で呼び出されることを確認することです。

私はモッキングにmockitoを使用しています。このシナリオをテストする方法を知っている人はいますか?

4

2 に答える 2

9

人になるのは嫌いですが、これをテストしないでください。実装ではなく、出力、副作用、結果をテストします。

本当に正しい順序を確保したい場合は、これらのメソッドを個別のクラスに抽出してモックします。

于 2012-04-10T17:01:11.073 に答える
3

プライベート メソッドが ... まあ ... プライベートである限り、テストしないでください。それらは実装の詳細です。クラスのコントラクトを変更せずにリファクタリングできます。パブリック メソッドの正しい結果をテストします。

于 2012-04-10T17:03:19.733 に答える