所以我有一個刪除一些對象的函數,東西。這可能需要一段時間,比如半小時左右,我想檢查它是否被成功刪除。@Testpublic void successfulThingDelete(){ Thing thing = new Thing(); deleteThing(thing); if (thing.getStatus() == 'deleted'){ pass } else { fail }我希望能夠不斷檢查事物的狀態(即thing.getStatus()),并在它被刪除時通過測試。但是,如果經過了一定的時間并且沒有刪除,那么代碼失敗了,它應該失敗。我假設我需要為這個狀態的 ping 引入一個新線程,但我不確定如何在這個方法中添加它。謝謝你的幫助!
2 回答

白衣染霜花
TA貢獻1796條經驗 獲得超10個贊
我會去等待。有了它,您可以編寫測試,例如
@Test
public void updatesCustomerStatus() throws Exception {
// Publish an asynchronous event:
publishEvent(updateCustomerStatusEvent);
// Awaitility lets you wait until the asynchronous operation completes:
await().atMost(5, SECONDS).until(customerStatusIsUpdated());
...
}
添加回答
舉報
0/150
提交
取消