2011-10-03 1 views
0

アンドロイドライブラリプロジェクトの単体テストを作成します。指定されたスレッドが待機しているかどうか(synchronized object.wait()が呼び出されたかどうか)をテストする必要があります。それを決定することは可能ですか?Android:待機スレッドを確認するには?

答えて

1

メソッドが呼び出されるかどうかを調べるためにユニットテストを書く一般的な方法は、メソッドをオーバーライドして呼び出されるときにフラグを設定するモックオブジェクトを作成することです。たとえば:

public class MockYourClass extends YourClass { 
    public boolean mWaitWasCalled = false; 
    @Override 
    public void wait() { 
     mWaitWasCalled = true; 
     super.wait(); 
    } 
} 

このモックのためにあなたのクラスの使用を代入して、assertTrue(mockClass.mWaitWasCalled)

はランダムなオブジェクトが与えられたことを確認し、スレッドがそれに待機している場合伝える方法はありません。

+0

あなたは私を啓発しました。 – eros

関連する問題