2010-02-03 2 views
4

Когда QUnit добавляет данные результата теста в ваш HTML-документ, он задумчиво обертывает количество выполненных, прошедших и прошедших тестирование тестов, каждый из которых имеет свой собственный класс, чтобы вы могли восстановить эти три номера программно. Однако, несмотря на то, что я могу видеть пролеты в готовом HTML, я не могу найти их, когда я ищу сКак извлечь результаты QUnit из документа

jQuery('span.failed'); // For example 

Они не там во время события загрузки, хотя они к этому событию OnUnload. Я также не могу получить их сразу после вызовов QUnit test().

Что я делаю неправильно?

ответ

3

QUnit предлагает обратный вызов метод, который вам нужен перезаписать: QUnit.done(failures, total)

Он вызывается, когда последний тест закончен, и получает как число неудачных испытаний, хорошо мы общее количество тестов. так просто определить

QUnit.done = function(failures, total) { 
    // do whatever here 
} 

и это все.

+0

Очень чистое решение! Благодарю. –

+1

Примечание: параметры, переданные завершенному обратному вызову, изменились, см. Http://api.qunitjs.com/QUnit.done/ для получения последних сведений. – Nemo157

2

Javascript время может быть немного сложнее. Вместо того чтобы делать:

test(); 
yourMethod(); 

Вы можете попробовать сделать:

test(); 
window.setTimeout(yourMethod, 1000); 

В зависимости от того, что речь идет именно, вы можете даже быть в состоянии уйти с 1 вместо 1000 (но я полагаю, 1 секунда - это не так страшно в любом случае).

+0

Это исправлено! Точка отсечения кажется около 60 мс для моего браузера/веб-страницы, поэтому я буду придерживаться 100 мс для обеспечения безопасности. TVM. –

Смежные вопросы