2015-08-13 151 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