2015-08-13 196 views
0

是否可以在L5單元測試中等待。我有以下的情況下Laravel單元測試延遲

$this->visit('/') 
    ->select('Customer A', 'customer')// This will fire $.getJSON and populate the 'project' select object 
    //I need to wait a bit here for the 'project' select object to be populated 
    ->select('Project A', 'project') 

的選擇對象調用customer火災一$ .getJSON上改變其填充project選擇對象。

+0

你有沒有試過php的sleep()函數? – mimo

+0

是的,這是因爲某些原因沒有工作。 – Tuim

+0

我不知道phpunit測試是如何工作的。但如果通過curl完成,則JavaScript代碼將不會執行,因此您的選擇絕不會觸發ajax調用。 – mimo

回答

1

這不起作用,因爲Ajax請求在頁面加載後觸發。它不包含來自Ajax請求的項目數據。

您可以檢查出從這裏laracasts/integrated,如果你想使用waitForElement()

然後你就可以等待特定的時間內等待AJAX​​請求完成使用Selenium的驅動程序。

+0

我不再有上面提到的用例,我會接受你的答案。 – Tuim