Node.js — один из самых захватывающих языков, которые должны прийти к сообществу разработчиков в последнее десятилетие — принимая широкое принятое и легко изучать язык JavaScript и позволяя разработчикам создавать веб-серверы, сетевые инструменты и взаимодействовать с файловой системой. Это супер универсальный язык!
Давайте посмотрим на некоторое практическое использование TRAVIS CI и Node.js/Express!
Первое, что вы хотите сделать, это установить быстрый Package.json.
Мы можем сделать это, открывая терминал и сделав некоторые каталоги:
mkdir myapp cd myapp
Теперь давайте настроим package.json
Используя NPM INIT.
. Проверьте это для получения дополнительной информации о NPM init.
npm init -y
Далее в этом проекте узла — мы будем использовать Express. Так что снова давайте сохраним терминал открытым и запустить:
npm install express --save
Для некоторых наших разработок депозитана мы захочем захватить Супертест шума
Вы можете сделать это с помощью:
npm install supertest jest --save-dev
Допустим, у нас есть программа, которая просто какой-то классический Экспресс:
const express = require('express'); const app = express(); const port = 3000; app.get('/', async (req, res) => res.status(200).send('Hello World!')); app.listen(port, () => console.log(`Our app listening on port ${port}!`));
Это работает для ручного тестирования, мы не хотим, чтобы как можно было, мы хотим автоматизировать этот процесс, поэтому давайте Tinker с оригинальным приложением:
const express = require('express'); const app = express(); app.get('/', async (req, res) => res.status(200).send('Hello World!')); module.exports = app; // <--
Таким образом, вы можете спросить, как мы запустим приложение? Мы будем использовать SOC или Обезвреживание озабоченности . Мы размещаем звонок => Слушать ()
В файле под названием Server.js
Отказ Еще один отличный ресурс — использовать что-то называемое Сценарии жизненного цикла Отказ Это может быть действительно полезно при установке фундамента вашего проекта.
Убедитесь, что не назвать это что-то вроде Express.js
, но Server.js
:
const app = require('./app'); const port = 3000; app.listen(port, () => console.log(`Our app listening on port ${port}!`))
В зависимости от разрешений, которые мы можем изменить с камин
Теперь мы можем запустить:
node server.js
Убедитесь, что мы добавим это к нашему package.json
— Это будет проблемой, говорят, что кто-то видует это, и пытается использовать NPM Start.
. Принципиально, package.json
это метафайл для вашего приложения. Он перечисляет всю конфигурацию вашего приложения. Чем более сложный/утомительный о закупке package.json
Файл работает NPM init
Отказ В этом примере мы использовали init
Отказ
Мы захочу добавить это на наш Package.json.
"scripts": { "start": "node server.js" },
Мы захотим запустить местные тесты, прежде чем настроить TRAVIS! Мы будем создавать сверхтест
:
const app = require('../app'); const request = require('supertest'); describe('GET /', () => { it('responds with 200', async () => { await request(app) .get('/') .expect(200); }); })
В быстрый смысл, Супертест
сделает MOD запросы на приложение. Насмешливый
Быстрее, когда он сводится к нему намного больше для курса, когда сервер работает на скажении localhost
Отказ
Нам нужно будет повторить шаг, и добавить это на наш package.json
:
"scripts": { "start": "node server.js", "test": "jest" },
Помните псевдонимы
может быть что угодно, но Начать
и Тест
самые простые, чтобы запомнить и надежны.
Теперь вы можете проверить его локально, используя NPM тест
Отказ
Идеально, теперь мы хотим протолкнуть этот код в Github, используя классический поток:
git init git add . git commit -m "Our Express Project" git remote add origin remote repository URL git remote -v git push -u origin master
Теперь у вас есть репо, скажем, под названием экспресс-приложение
, пришло время реализовать Трэвис, как вы знаете, мы делаем это с .travis.yml
файл. Добавьте следующее .travis.yml
Файл к вашему проекту:
language: node_js node_js: - lts/*
ЛТС
Стенды для «долгосрочной поддержки», просто если вам было интересно! В этом случае Travis будет использовать NPM тест
Псевдонимы, но Трэвис по-прежнему имеет решающее значение, чтобы ваш проект где-то не ломается. Вы также можете запустить:
npm run lint
Убедитесь, что ваша учетная запись синхронизируется с TRAVIS, и теперь ваша сборка пройдет и в любое время вы вносите изменения, теперь у вас есть настройка CI/CD для вашего узла/экспресс-проекта. Это так просто.
Серия Cookbook
У нас есть новые рецепты каждую в другую неделю, убедитесь, что вы вернетесь к практическому способу использования Travis для начинающих.
Оригинал: «https://dev.to/travisci/using-node-js-express-with-travis-ci-32ha»