ajaxリクエストの送信を確認するために、ユーザーがフォームを送信するときに、jasmine(1)を使用して次のテストを実装しました。
テストは正常に合格しましたが、javascriptコンソールを見ると次のエラーが発生します500 (Internal Server Error)
。
サーバーの応答は気にしないので、質問は次のとおりです
。1)このエラーを気にする必要があるかどうか。
2)回避するためにajaxリクエストを偽造する方が良いInternal Server Error
でしょうか?はいの場合、私の文脈ではどうですか?
(1)
define([
'backendController'
], function (backendController) {
// some code
describe('When button handler fired', function () {
beforeEach(function () {
spyOn(backendController, 'submitRequest1').andCallThrough();
this.view = new MyView({
el: $('<div><form><input type="submit" value="Submit" /></form></div>')
});
this.view.$el.find('form').submit();
});
it('backendController.submitRequest1 should be called', function () {
expect(backendController.submitRequest1).toHaveBeenCalled();
});
});
});
(2)
// backendController object
return {
submitRequest1: function (message) {
return $.ajax({
url: 'someUrl',
type: 'POST',
dataType: 'json',
data: {
message: message
}
}).done(function () {
// some code
});
}
}
(3)
// submitForm in MyView
submitForm: function (event) {
event.preventDefault();
var formElement = event.currentTarget;
if (formElement.checkValidity && !formElement.checkValidity()) {
this.onError();
} else {
backendController. submitRequest1('some data').done(this.onSuccess).fail(this.onError);
}
}