Простой сайт-счетчик, который можно увеличивать и уменьшать.
- Установи Node.js с сайта nodejs.org
- Скачай папку с проектом
- Открой терминал в папке проекта
- Напиши:
npm install - Напиши:
npm start - Открой браузер: http://localhost:3000
npm install
npm testДля подробного вывода:
npm run test:verbose- Когда ты загружаешь новый код на GitHub в ветку main
- Автоматически запускаются все unit-тесты
- Результаты тестов записываются в этот README с эмодзи ✅ или ❌
- Автоматически обновляется файл CHANGELOG.md с историей изменений
server.js- код сервераserver.test.js- unit-тесты (Jest + supertest).github/workflows/ci.yaml- настройка автоматикиCHANGELOG.md- что ты менял
- Сервер запоминает число (счетчик)
- Кнопка "+1" увеличивает число
- Кнопка "-1" уменьшает число
- Все изменения сохраняются, пока сервер работает
GET /- главная страница со счетчикомGET /counter- получить значение счетчика (JSON)POST /increment- увеличить счетчик на 1POST /decrement- уменьшить счетчик на 1
Последний запуск: 26.01.2026, 11:23:44 UTC
Статус: ✅ Все тесты пройдены
Всего тестов: 15 | ✅ Пройдено: 15 | ❌ Провалено: 0
| Тест | Статус |
|---|---|
| GET / > должен возвращать HTML страницу со счетчиком | ✅ |
| GET / > должен содержать кнопки +1 и -1 | ✅ |
| GET /counter > должен возвращать текущее значение счетчика как JSON | ✅ |
| GET /counter > должен возвращать правильное значение после изменения счетчика | ✅ |
| POST /increment > должен увеличивать счетчик на 1 | ✅ |
| POST /increment > должен увеличивать счетчик несколько раз подряд | ✅ |
| POST /increment > должен работать с отрицательными значениями | ✅ |
| POST /decrement > должен уменьшать счетчик на 1 | ✅ |
| POST /decrement > должен уменьшать счетчик несколько раз подряд | ✅ |
| POST /decrement > должен корректно переходить в отрицательные значения | ✅ |
| Вспомогательные функции > resetCounter должен сбрасывать счетчик к значению по умолчанию | ✅ |
| Вспомогательные функции > resetCounter должен устанавливать произвольное значение | ✅ |
| Вспомогательные функции > getCounter должен возвращать текущее значение | ✅ |
| Интеграционные тесты > increment и decrement должны корректно взаимодействовать | ✅ |
| Интеграционные тесты > значение на главной странице должно обновляться | ✅ |