0

現在のテスト タスクは次のようになります。

test {
    doFirst {
        println 'Starting application...'
        Thread.startDaemon {
            appProcess = testServerExec.execute()
        }
        sleep 20000 // wait for thread to start
    }

    doLast {
        appProcess.destroy()
    }
}

appProcess.destroy()テストに合格すると、が呼び出され、誰もが満足していることに気付きました。ただし、テストが失敗した場合、スレッドが残り、自分でプロセスを強制終了する必要があります。Gradle に try/finally があることは知っていますが、この場合、それを正しく使用する方法がわかりません。appProcess.destroy()基本的に、テストが失敗しても実行したい。

どうすればいいですか?

編集:発見beforeSuiteされafterSuiteましたが、複数のテストスイートを実行しています。このスレッドをすべてのスイートの前に開始し、すべてのスイートの後に強制終了したいだけです。

4

1 に答える 1