मुझे इस समस्या को हल करने के दो अलग-अलग तरीके मिले। एक पूरा होने पर एक कस्टम घटना फेंकने के लिए जैस्मीन को हैक करना है। क्योंकि मैं खरोंच स्क्रीन करने के बाद परीक्षण लोड चाहता था, मैं "reportRunnerResults"
$('body').trigger("jasmine:complete");
के अंत में चमेली-html.js में घटना ट्रिगर डाला तो यह घटना के लिए सुन रहा की बात है:
$('body').bind("jasmine:complete", function(e) { ... }
मेरे मामले में, मैं iFrame में चमेली चल रहा था और एक माता पिता के खिड़की के परिणाम पारित करने के लिए चाहता था, इसलिए मैं अपनी पहली बाँध से माता-पिता में एक घटना को ट्रिगर:
$(window.parent).find('body').trigger("jasmine:complete");
यह भी संभव है बिना jquery के यह करने के लिए। मेरी रणनीति "समाप्त-पर" अवधि में जोड़ने के लिए पाठ के लिए मतदान करना था। इस उदाहरण में मैं 8 सेकंड के लिए हर 5 सेकंड मतदान करता हूं।
var counter = 0;
function checkdone() {
if ($('#test-frame').contents().find('span.finished-at').text().length > 0) {
...
clearInterval(timer);
} else {
counter += 500;
if (counter > 8000) {
...
clearInterval(timer);
}
}
}
var timer = setInterval("checkdone()", 500);
स्रोत
2011-05-13 12:56:48
धन्यवाद, यह बहुत अच्छा है। मैं स्टैक निशान से इंटेलिजे आइडिया को हाइपरलिंक्स बनाने के लिए परीक्षण के बाद कोड चलाने के लिए इसका उपयोग कर रहा हूं। – vaughan