【发布时间】:2017-05-07 01:02:27
【问题描述】:
我正在使用 phpunit 在 Laravel 中进行测试。我运行一个测试,将它插入一个文本框并按下一个按钮。然后,有一个 Ajax Post 将信息发送到服务器并返回响应。如果我返回的字符串有以下代码,在测试中我应该得到正确的字符串吗?
我有以下控制器:
class MyController extends Controller{
public static function createNewComplaintStep_2(){
return "error";
}
}
路线:
Route::post('/createNewComplaint_Step2', 'MyController@createNewComplaintStep_2');
带有表单和ajax方法的视图:
<form id="formToSubmit" data-value="createNewComplaint_Step2" class="form-horizontal">
{!! csrf_field() !!}
<div class="form-group">
<label class="col-md-4 control-label">Customer:</label>
<div class="col-md-3">
<input class="form-control" name="customer_name" required>
</div>
</div>
<button type="submit" class="btn btn-success" name="subBTN"\>
</form>
(...)
<script>
$( '#formToSubmit' ).on( 'submit', function(e) {
var href = $(this).data('value');
e.preventDefault();
$.ajax({
type: "POST",
url: href,
data: $(this).serialize(),
success: function( msg ) {
$("#container-fluid").html(msg);
$('.se-pre-con').hide();
}
});
});
</script>
phpunit 测试:
$this->visit('/createNew')
->type('NAME', 'customer_name')
->press('subBTN')
->see('error');
有什么问题吗?因为如果我运行代码,我会得到错误
断言页面包含 HTML [错误] 失败。请检查以上内容
上面的内容就是上面的视图。似乎 ajax 请求不适用于 phpunit。 有什么建议吗??
提前致谢!
【问题讨论】:
标签: php jquery ajax laravel phpunit