JsTestDriver в NetBeans прекращает тестирование после неудачного утверждения

178

Я настроил модульное тестирование JavaScript с помощью JS Test Driver на Netbeans согласно этой ссылке . Однако, в отличие от результатов этого учебника, после проверки не выполняется больше тестов. Как я могу изменить это поведение?

Например, учитывая этот тестовый файл:

test.jsФайл:

AssertionsTestCase = TestCase("AssertionsTestCase");

AssertionsTestCase.prototype.testAlwaysPass = function(){
  assertEquals(1, 1);
  assertEquals(2, 2);
};
AssertionsTestCase.prototype.testAlwaysFail1 = function(){
  assertEquals(1, 2);
};
AssertionsTestCase.prototype.testAlwaysFail2 = function(){
  assertEquals(3, 4);
};

индикатор выполнения показывает 50% (2 теста), это должно сказать 33%.

введите описание изображения здесь

jsTestDriver.confФайл:

server: http://localhost:42442
load:
  - test/lib/jasmine/jasmine.js
  - test/lib/jasmine-jstd-adapter/JasmineAdapter.js
  - test/unit/*.js

Я могу запустить все тесты из командной строки. (В Windows PowerShell). Работая следующим образом, тесты не прекращаются после сбоя:


java -jar $ env: JSTD \ JsTestDriver-1.3.5.jar - тестирует все --config jsTestDriver.conf

jsTestDriver.confфайл:

server: http://localhost:4244
load:
  - test/lib/jasmine/jasmine.js
  - test/lib/jasmine-jstd-adapter/JasmineAdapter.js
  - test/unit/*.js

Все три теста запущены.

CL22
источник
8
Вы пробовали это с другим браузером? Поскольку он работает из командной строки, я предполагаю, что ошибка вызвана NetBeans или браузером.
Силу
3
это поможет тебе? jasmine --stop-on- fail
Лука
Может быть, комментарии здесь могут помочь stackoverflow.com/questions/22119193/…
Роберт
Я думаю, что обработка теста netbeans глючит, по крайней мере, с Mocha.
Дункан

Ответы:

1

Похоже, в Chrome работает нормально. введите описание изображения здесь

Что касается Firefox, как в комментарии сказано, это не правильный ответ. Мне удалось заставить его работать частично. Вопрос в том, как netbeans обрабатывает неудачные тесты и как запускается jstestdriver.jar. Я знаю, что это не решает проблему, но она указывает в правильном направлении.

введите описание изображения здесь

Шаги, чтобы воспроизвести это.

  1. Запустите JS Test Driver из Служб
  2. Запустите тест.
  3. Так как я использую Linux. Я нашел jstestdriver.properties из папки конфигурации Netbeans для текущего пользователя. В моем случае это находится в

    /home/{user}/.netbeans/8.2/config/Preferences/org/netbeans/modules/javascript/jstestdriver.properties

    Отредактируйте свойство местоположения, добавив аргументы в jstestdriver.jar --tests all --reset. После редактирования мои свойства выглядят так.

    location=/home/user/Downloads/jstestdriver-1.3.5.jar --tests all --reset server.url=http://localhost:42442 strict.mode=false use.browser.ANDROID_DEVICE_CHROME=false use.browser.ANDROID_DEVICE_DEFAULT=false use.browser.ANDROID_EMULATOR_DEFAULT=false use.browser.Chrome=false use.browser.Chrome.INTEGRATED=false use.browser.SL__Browsers_FirefoxBrowser=true use.browser.SL__Browsers_MozillaBrowser=false

  4. Повторите 2 раза.

    • Перезапустите JS Test Driver из Служб.
    • Запустите тест.

После второго перезапуска и запуска он должен запустить все тесты, как показано на рисунке выше. Если вы можете добавить аргументы --tests all --reset для JS Test Driver в Netbeans, это должно решить проблему, чтобы работать как в Chrome.

exp2Tapavicki
источник