Javascript Buildmanagement - «Должны быть» инструменты? - PullRequest
0 голосов
/ 19 марта 2010

Есть ли какие-либо инструменты для разработки Java Script (RIA), такие как maven, jUnit, Emma, ​​link4j и т. Д. Для Javascript? Каков наилучший способ настроить систему непрерывной интеграции для более крупного приложения или инфраструктуры? Как такие проекты, как jQuery, тестируют свой код? Как управлять зависимостями и различными конфигурациями проекта?

инструменты, которые я знаю до сих пор:

  • javascript-maven-tools (правильный выбор maven?)
  • JSLint
  • yuicompressor
  • звездочки (найдено 5 минут назад)
  • JsUnit
  • Селен

Ответы [ 2 ]

1 голос
/ 19 марта 2010

Hudson - хороший инструмент для управления вашими работами по сборке и тестированию. И у него есть плагин Selenium .


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

Автоматизация сборки - это хорошо. Хорошо выявлять сбои сборки и тестировать сбои как можно скорее. Я рекомендую автоматизировать ваши тесты в стандартной среде, чтобы они выполнялись как можно быстрее после фиксации. И я рекомендую сделать вашу версию сборки такой же простой и воспроизводимой, как нажатие кнопки.

Мартин Фаулер имеет хороший список рекомендуемых практик .

И предыдущий вопрос содержит описание того, как запускать модульные тесты Javascript с помощью CI.

В частности, в отношении Hudson мы используем Hudson, потому что он гибкий, он позволяет центральному серверу управлять сборками на ведомых устройствах Windows и Linux, а также имеет плагины для поддержки множества различных рабочих процессов и инструментов.

Что касается зависимостей, Hudson позволяет запускать сборки по завершении других сборок, что хорошо для запуска различных тестов после успешной сборки продукта. Если вы спрашиваете, как следует обращаться с внешними зависимостями, вам придется выяснить, какая политика имеет смысл, основываясь на дизайне и требованиях вашего приложения. Недавно я видел пару других вопросов о javascript, касающихся того, как обрабатывать такие зависимости.

0 голосов
/ 19 марта 2010

jQuery использует QUnit . Еще один компрессор - Crockfords JSMIN.

...