Я проверил некоторые библиотеки NPM для проверки веб-страниц или веб-сервисов. Но все они ожидают, что сервер уже запущен. Так как я хочу, чтобы автоматизировать функциональное тестирование, как я могу настроить NPM пакет таким образом, чтоАвтоматизация функционального тестирования в node.js
- Он может запустить сервер
- Test приложение
- Остановите сервер
Так что Я могу тестировать его локально, а также в онлайн-инструментах CI, таких как travis-ci или circleci.
Случай 1: Webservice
я написал пакет НПМ, который начинается nodejs HTTP (S) сервера. Его можно запустить из командной строки $stubmatic
. В настоящее время я использую 2 подхода к его тестированию,
- руководство пользователя: я вручную запускаю его из командной строки. Затем запустите тесты.
- Автоматически: я использую модуль
exec
для запуска команды unix, которая может запустить приложение и запустить командуpkill
, чтобы убить приложение. Но для этой автоматизации мое приложение необходимо установить на тестовую машину.
Случай 2: Веб-сайт
У меня есть создать пакет НПМ: fast-xml-parser
и создали демонстрационную страницу в репо, так что я могу быть протестирована в браузере. Чтобы протестировать демонстрационную страницу, я в настоящее время запускаю локальный сервер, используя пакет http-server
npm вручную. Проверьте приложение.
Что может быть лучшим способом написать автоматизацию функциональных тестов для узлов js-приложений?
Примечание:
- Я никогда не использовал бегуны задачи, как глотку или ворчание. Поэтому я не уверен, что они могут помочь в этом случае.
- В случае 1 мое приложение запускает собственный HTTP-сервер узла js. Я не использую какое-либо стороннее приложение, например
express
.
Я нашел решение для случая 2. ищет для случая 1 в настоящее время. –