私のクラスの別のクラスのインスタンスへの呼び出しをモックしようとしています。私が見ている問題は、テストを実行すると、モックオブジェクトが実際のオブジェクトに置き換えられていないように見えるということです。私はこの事例を説明するためにここで簡単な例を作りました。ここではthis is awsome
の代わりにtada
を印刷したいのですが、方法はprintAwsome()
です。私は参考のために私のコードを以下のリンクに入れています。もし何かが間違っていると私に知らせてください。Mock外部のメソッド呼び出しIn Juintsクラスから
https://gist.github.com/anonymous/1eab366c60efb75b9075f100a67c851b
私はoptionPane.printAwsome()
誰かが私がここで間違ってやっているものに私を指すことができ模擬しようとすると、ExcelSupporTestはthis is awsome
代わりのtada
を出力します。これは単に、同様にその読み手段として何
DefaultOptionPane defaultOptionPane = mock(DefaultOptionPane.class);
when(defaultOptionPane.showMessageDialog(anyObject(), anyObject(), anyString(), anyInt()))
.then(//do what you want to do here <Answer>);
たびです:私はあなたがメソッドshowMessageDialog
への呼び出しを模擬しようとしている場合、質問を形成推測できるものに
を模擬することができます。メソッド/クラスを模擬しようとしているところでコードを共有できますか?上記のテストは表示されません。 – nullpointer
オーバーヘッドを削除するシンプルなバージョンを作って見て、これが役に立ったら教えてください – user2540256
あなたはコードを削除して質問360を変更しました。理解を深めるために質問を改善してください。これはまた、質問に応じて答えを更新するのに役立ちます – nullpointer