5
我正在使用QUnit和JQuery,並想測試我的網站的用戶界面。我的web應用程序駐留在一個iframe中。我想單擊導航鏈接,然後等待,直到新頁面加載,然後我想通過JQuery選擇一些項目,以確保正確的頁面已加載。使用QUnit,JQuery和iframe進行UI測試 - 如何等待新頁面加載?
如何實現這一目標?
我讀了setTimeout(),delay(),ajaxSetup(),setInterval(),直到現在:沒有成功。
下面的代碼片段:
// Klick auf Unternehmen und vergleiche h1-Ueberschrift.
test("Klick Unternehmen, checke Ueberschrift", function() {
var mes = "test: Klick Unternehmen, checke Ueberschrift;";
var exp = "Unternehmen";
jQuery.ajaxSetup({ async: false }); //turn off async so tests will wait for ajax results
jQuery('#testframe').attr('src', './../index/unternehmen/').delay(3000);
var t = setTimeout('doNothing()', 2000);
//alert('now');
var act = jQuery('h1').eq(1);
//var act = "Unternehmen";
//console.log(mes);
equal(act, exp, mes);
});
UPDATE:我通過AJAX調用的ressource。無論如何,仍然不知道如何調用click() - wait() - compare()。
// Klick auf Unternehmen und vergleiche h1-Ueberschrift, Ajax S. 250
test("Klick Unternehmen, checke Ueberschrift", function() {
jQuery.ajax({
url: "./../index/unternehmen/",
async: false,
success: function(response){
if (response){
jQuery('#ajaxcontent').html(response);
}
},
context: document.body,
type: "POST"
});
var mes = "test: Klick Unternehmen, checke Ueberschrift;";
var exp = "Unternehmen";
var act = jQuery('#ajaxcontent h1').eq(0).text();
equal(act, exp, mes);
});