내 웹 응용 프로그램이 오류 시나리오를 처리하고 QUnit을 사용하여 해당 오류 메시지를 표시하는지 테스트하려고합니다.QUnit 및 실패 JSONP 시나리오
내 앱은 JSONP 요청을 통해 초기화 내용을 가져옵니다. 시작시 데이터 소스를 사용할 수없는 경우를 테스트하고 싶습니다. 이 시나리오는 예상되는 동작 임에도 불구하고 QUnit이 인터셉트하여 실패한 어설 션으로 캡처 한 것으로 생각되는 기본 JQuery 코드에서 오류를 발생시킵니다.
내 응용 프로그램 코드는 다음과 같습니다
loadContents() {
$.ajax({
url: initURL,
dataType: 'jsonp',
timeout: timeout,
success: initializeDisplay,
error: displayErrorMessage,
});
}
내 테스트 케이스는 다음과 같습니다 : 내 테스트를 실행하면
asyncTest("Invalid initialization host", 1, function() {
initURL = invalidURL;
loadPageContents();
index = $("#error-message-div").text().indexOf(errorMessage);
ok(index > -1, "Error message not found");
})
, 나는 항상 실패 여분의 주장을 얻을. 어설 션에는 JSONP GET 요청에 대한 URL이있는 "스크립트로드 오류"메시지가 포함되어 있습니다.
JSONP 콜백이 실행되지 않았기 때문에 QUnit이 실패한 어설 션이라고 생각하는 예외를 throw합니다.
예외 테스트를 실패로 등록하지 않고 실행할 수있는 아이디어가 있습니까?
업데이트 - 명확히하기 위해 QUnit 어설 션은 예상대로 작동하지만 어쨌든 나는 항상 어설 션을 추가로 얻습니다. 항상 실패합니다.
감사합니다.