Как мне начать новый JavaScript-проект (Тестирование, Разработка, Сборка)? - PullRequest
3 голосов
/ 07 декабря 2010

Я занимаюсь разработкой JavaScript уже много лет, но никогда не задумывался обо всем, что касается тестирования, разработки и сборки, - но я понял, что это в значительной степени необходимо. Мы только что использовали хранилище Subversion с простой пометкой релиза (скоро переключимся на git). Поскольку скоро появится новый, более крупный проект с использованием чистого JavaScript (использующий jQuery), я бы хотел оптимизировать весь процесс.

Я уже провел некоторые исследования, но так и не нашел хорошего начального урока.

Это определенно хорошая идея разделить классы и отдельные блоки кода на несколько js-файлов, а не на большие (как это делают Prototype или jQuery). Эти js-файлы должны быть «собраны» в один файл. Как мне этого добиться?

В значительной степени необходимо провести модульное тестирование того, что я и мои коллеги пишем. Я нашел js-test-driver , который имеет плагин Eclipse, который, кажется, делает свою работу довольно хорошо. Если моя папка разработчика содержит все эти src- и src-test-файлы, как мне интегрировать это в процесс сборки?

Ответы [ 4 ]

2 голосов
/ 07 декабря 2010

Для тестирования взгляните на это: https://stackoverflow.com/questions/32809/javascript-unit-testing

2 голосов
/ 07 декабря 2010

Для объединения всех ваших JavaScript в один файл вы можете использовать что-то вроде YUI Compressor .Вам нужно сначала найти минимизатор, затем компрессию.Минимизатор просто берет файлы, объединяет их и избавляет от пробелов.Компрессор фактически попытается оптимизировать js для вас, изменяя имена переменных и удаляя ненужный код.

Что касается модульного тестирования, я не уверен, как вы захотите это сделать.Есть несколько библиотек модульных тестов.Популярным инструментом для тестирования является Selenium.В настоящее время я не занимаюсь модульным тестированием, поэтому у меня там нет элементов ..

Для настройки своего кода вы всегда можете посмотреть на использование JavaScript-фреймворка, такого как ExtJS или JavaScriptMVC.Они помогают вам правильно настроить ваш код, а также помогают сосредоточить вашу команду на надлежащих стандартах и ​​структуре кодирования, в то же время написав много кода для вас, чтобы вам не пришлось заново изобретать колесо.

РЕДАКТИРОВАТЬ: просто быстро после мысли.Даже если вы не хотите использовать JavaScript-фреймворк, я бы посоветовал проверить их, особенно ExtJS, просто чтобы посмотреть, как они организуют свой код и какие уловки они делают, чтобы поддерживать его в чистоте.

1 голос
/ 07 декабря 2010

Эти js-файлы должны быть "собраны" в один файл. Как мне этого добиться?

Обязательно храните ваши файлы отдельно в управлении версиями и объединяйте их только в процессе сборки.

Упомянутый в другом месте YUI-компрессор - это инструмент на основе Java, который будет не только объединяться, но - конечно! - сжать файлы для более быстрой загрузки.

Если вы хотите просто объединить файлы, простой Perl или bash-скрипт (или другой предпочтительный язык сценариев) может объединить несколько .js файлов в один для выпуска - просто убедитесь, что скрипт сборки также обновляет все HTML в релизе ссылается только на одну страницу.

1 голос
/ 07 декабря 2010

Я отвечу на часть вашего вопроса:

Эти js-файлы должны быть "собраны" в один файл.

Это возможно только с серверомсторонний язык - в ASP.NET вы для этого встроили инструменты, в противном случае создайте свой собственный файл на стороне сервера «слияния» и ссылайтесь на этот файл вместо реальных файлов .js.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...