Каковы некоторые Платформы Поблочного тестирования и Насмешки JavaScript, которые Вы использовали? [закрытый]

Указатель NULL - это тот, который указывает на никуда. Когда вы разыскиваете указатель p, вы говорите «дайте мне данные в месте, хранящемся в« p ». Когда p является нулевым указателем, местоположение, хранящееся в p, является nowhere, вы говорите «Дайте мне данные в месте« нигде ». Очевидно, он не может этого сделать, поэтому он выбрасывает NULL pointer exception.

В общем, это потому, что что-то не было правильно инициализировано.

42
задан Chic 29 April 2015 в 14:07
поделиться

11 ответов

QUnit
jQUnit
, Пишущий тесты JS с QUnit и jQUnit

QUnit является платформой поблочного тестирования для платформы JavaScript jQuery. Сама среда тестирования пользуется библиотекой jQuery, но тесты могут быть записаны для любого JavaScript и не требуют, чтобы код использовал jQuery. JQUnit является измененной версией QUnit, который добавляет в установке, разрушении, и утверждайте функции, которые более типичны для xUnit платформы, и инкапсулирует все в одной глобальной переменной.

визуальный интерфейс testrunner страницы хорош, позволяя Вам выполнить развертку и видеть, что каждый утверждает в каждом методе тестирования. Запись тестов довольно легка, и можно выполнить тестовый код непосредственно на testRunner странице [8]. Это позволяет, чтобы легкий и видимый DOM тестировал.

QUnit: MIT или GPL (выбирают) jQUnit: Профессионалы Лицензии

MIT
- Асинхронная поддержка
- Хороший для DOM тестирование
- Тесты, всегда запускаемые последовательно в порядке, они добавляются к комплекту
- Отладке на тестовой странице с помощью поджигателя
- Синтаксис, подобны JUnit при использовании JQUnit, но простой учиться при использовании Недостатков QUnit

- Автоматизацию было бы трудно реализовать

19
ответ дан Chris MacDonald 26 November 2019 в 23:50
поделиться

JsUnit выполняется или от браузера через его плагин Eclipse, или от автоматически через задачу Ant. Вы создаете страницу HTML с набором тестовых функций, которые нужно назвать с префиксом ‘test’, включать файл JS, который Вы тестируете. То, когда любой утверждает в функции, приводит к сбою, сбои целой функции и прекращает выполняться. Нет никакого гарантируемого порядка, в котором запущены эти тесты. Можно создать setup() и teardown() функции.

Лицензия: GPL, GLPL, профессионалы MPL

  • Автоматизацию относительно легко реализовать
  • Большая функциональность
  • , Синтаксис подобен Недостаткам JUnit

  • Не большой для DOM, тестирующего, так как это запускает тесты в iFrame.
  • Никакая гарантия, что тесты будут запущены в порядке, который они записаны.
  • Can’t используют Firebug на testrunner странице. Потребность иметь другую вкладку открывается фактическим тестовым кодом.
0
ответ дан Rob W 26 November 2019 в 23:50
поделиться

Вы могли попробовать HtmlUnit, который имел JQuery совместимый выпуск более чем год назад.

преимущество HtmlUnit состоит в том, что он не управляет браузером, таким образом, это - FAST.

оборотная сторона - то, что это не управляет браузером, таким образом, существуют некоторые вещи JS, которые не будут работать. Но возмещение этого, они могут запустить тесты JQuery так поддержка JS, могло бы быть достаточно хорошим для того, в чем Вы нуждаетесь.

0
ответ дан Jeffrey Fredrick 26 November 2019 в 23:50
поделиться

CrossCheck казался чрезвычайно мощным, когда я посмотрел на него, но мы не включили его в наш процесс сборки в это время. Это имеет преимущество того, чтобы быть browserless, и таким образом должно работать хорошо в автоматизированной сборке-и-сценарии-тестирования.

http://thefrontside.net/crosscheck

0
ответ дан Ben Fulton 26 November 2019 в 23:50
поделиться

Я знаю, что Вы просите совместимые с jQuery платформы, но я хочу бросить script.aculo.us в соединение для полноты. Они имеют модульный тест комплект, который не плох.

0
ответ дан pkaeding 26 November 2019 в 23:50
поделиться

Поскольку насмешка в JavaScript смотрит на qMock, платформа коллега, и я записал для дополнения нашего использования QUnit. Хотя последний является великим для модульных тестов, это не допускает очень эффективное асинхронное тестирование / тестирование бизнес-логики. Мы havn't 'отметил' любой выпуск как стабильный, но существуем некоторые достойные документы о там, и если Вы контроль, svn, Вы будете видеть сам qmock, имеет модульные тесты позади него, которые довольно очевидны.

, О, и автоматизировать тестирование как часть сборки мы использовали простой сценарий селена для навигации через наш testsuite (одна страница тестирования на файл JS) и 'слушали' для передачи или класса CSS сбоя (добавленный QUnit). Это работает бездисплейное также на IE/FF2 AFAIK

1
ответ дан 26 November 2019 в 23:50
поделиться

Тест YUI
TDD С Тестом YUI

Тест YUI является средой тестирования для библиотеки Yahoo’s User Interface. Это используется Yahoo для тестирования его собственной библиотеки и имеет синтаксис, подобный jUnit.

Как jsUnit, Тест YUI идет со своей собственной консолью входа, которая может произвести информацию, предупреждения и ошибки в дополнение к результатам каждого теста.

YUI также обеспечивает, способность к отправляют отчеты на результатах или в JSON или в формате XML.

Тест YUI является Лицензированным BSD.

Профессионалы
- Действительно хорошая документация
- Активное сообщество
- Регулярные выпуски
- Синтаксис подобен jUnit (наборы тестов, утверждает и установка/разрушение)
- Асинхронная поддержка
- Хороший для DOM тестирование
- Тесты, всегда запускаемые последовательно в порядке, который они добавляются к комплекту

Недостатки
- Автоматизация, не тривиальная для реализации, но менее трудный, чем другие платформы

6
ответ дан Chris MacDonald 26 November 2019 в 23:50
поделиться

Мы использовали jsspec jsspec. Его очень хорошее, если Вам нравятся rspec и BDD. Просто видел статья Justin Gehtland при использовании его "бездисплейный" также.

1
ответ дан Robert J Berger 26 November 2019 в 23:50
поделиться

Что касается разработки Mozilla, я влюбился в UXU , основанный на MozUnit, но все еще активный. Имеет приятные функции, такие как фиктивный сервер или методы sleep / yeld.

1
ответ дан 26 November 2019 в 23:50
поделиться

Я использую среду тестирования Screw Unit и написал свою собственную библиотеку имитаторов под названием jsMocha , которая интенсивно использовалась в компании, в которой я работаю более 6 месяцев. .

1
ответ дан 26 November 2019 в 23:50
поделиться

Я не уверен, почему никто не упомянул JsTestDriver ! Это должен быть один из немногих инструментов JS-тестирования, который действительно работает так, как вы ожидаете, если вы использовали инструменты модульного тестирования на других языках.

12
ответ дан 26 November 2019 в 23:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: