Модульные тесты addon-sdk Firefox

Кто-нибудь использовал модульные тесты из addon-sdk (тест cfx)?

Я сделал тест, который выглядит так:

exports.test_open_tab = function(test) {
   const tabs = require("tabs");
   tabs.open({
       url: "http://valid url with lots of params",
       onReady: function(tab) {
           test.done();
       }
   });

   test.waitUntilDone(600*1000);
};

в основном это должно открыть вкладку, подождать 600 секунд, и они пометят ее как пройденную.

Он на самом деле отображает в консоли множество ошибок и предупреждений с загруженной страницы (материалы jquery и аналитики Google, используемые загруженной страницей), а затем помечает тест как не пройденный.

Есть идеи, почему?


person Quamis    schedule 25.08.2011    source источник


Ответы (1)


Одна очевидная проблема заключается в том, что у вас на самом деле нет результатов теста. Если тот факт, что onReady() вызывается, является положительным результатом, вы должны написать:

 onReady: function(tab) {
     test.pass("onReady called");
     test.done();
 }

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

Вы можете несколько уменьшить количество регистрируемых предупреждений, отключив javascript.options.strict предпочтение. Однако эти предупреждения могут указывать на реальные проблемы, и в текущих версиях Firefox, вероятно, имеет смысл отключить отображение предупреждений JavaScript и CSS в консоли.

person Wladimir Palant    schedule 25.08.2011
comment
согласно addons.mozilla.org/en-US/developers/docs/sdk/1.0/packages/, он просто ожидает вызова test.done(). Я попробую позвонить .pass(), когда у меня будет возможность (у меня нет доступа к банкомату компьютера разработчика) - person Quamis; 25.08.2011
comment
знаете ли вы какой-либо способ игнорировать предупреждения и ошибки, генерируемые веб-страницей, но отображать ошибки надстроек? Мой аддон должен загружать некоторые тексты с веб-страниц, поэтому мне нужно иметь возможность открывать страницы, а затем вызывать какую-то функцию аддона, чтобы на самом деле протестировать ее. - person Quamis; 25.08.2011
comment
да, test.pass сделал свое дело. все еще не избавился от ошибок веб-страницы, хотя - person Quamis; 25.08.2011
comment
@Quamis, вы когда-нибудь выясняли, как игнорировать предупреждения и ошибки, генерируемые веб-страницей? - person willlma; 25.02.2014
comment
@willlma нет, я закончил проект, над которым работал тогда, и не оглядывался назад. Тем временем SDK сильно развился, я ожидаю, что большинство проблем, с которыми я столкнулся, теперь исправлены. - person Quamis; 26.02.2014
comment
@Quamis Да, они проделывают фантастическую работу, но мои тесты завалены журналами страниц. - person willlma; 26.02.2014