15

シャットダウンフックを追加する方法があります。フックで実行されるコードが呼び出されることを (JUnit 経由で) テストする必要があります。

public void myMethod(){
    Runtime.getRuntime().addShutdownHook(new Thread() {

        @Override
        public void run() {
            ... code to test ...
        }
    });
}

単体テストでシャットダウンをシミュレートするにはどうすればよいですか?

4

2 に答える 2

10

あなたはそれをテストできないと思います。代わりに、コードが呼び出されたときに正しく動作することをテストするだけです (個別に単体テストを行います)。次に、Java が適切なタイミングでコードを呼び出すことを信頼してください。

つまり、単体テストでThread実行することにより、コードを拡張して動作をテストする別のクラスに抽出します。run()

于 2013-05-21T13:09:12.040 に答える