Я тестирую модуль jquery plugin с использованием qunit и sinonjs. Он отлично работает в браузере, все тесты проходят, но когда я запускаю в командной строке с помощью Grunt, я получаю сообщение об ошибке «PhantomJS», возможно из-за отсутствия запуска QUnit ». Проблема вызвана созданием sinonjs, созданным для window.alert. Может ли кто-нибудь объяснить, что не так с моей заглушкой? Я предполагаю, что phantomjs ждет ответа. Я попробовал QUnit.start(), а также попытался вернуть true/false/undefined из моего синусового заглушки.sinon stub time out phantomjs
QUnit.test('test options exist and default values', function(assert) {
// Stub the winow alert method using sinon.
var alertStub = sinon.stub(window, "alert", function(msg) { return true; });
$('#target').formdialog();
// Assert a dialog window opened, caused by the lack of parameters passed
sinon.assert.called(window.alert);
// Grab the jQuery plugin data assigned to the DOM element.
var options = $('#target').data('gten-formdialog').options;
Благодарим Вас за отзыв. К сожалению, не ответ :-(Все еще получил ту же проблему, но я внес поправки в код выше, чтобы отразить мои последние попытки. –
Dang ... как насчет того, чтобы пытаться издеваться над методом 'assert', чтобы убедиться, что это Sinon, что это проблема? Вы можете просто сделать: 'window.alert = function() {return true;};' ПРИМЕЧАНИЕ: если вы попробуете это, ваше утверждение не будет работать, но это скажет вам, если Phantom выйдет из строя или нет , – jakerella