- Скачать исходный код проекта:
git clone https://github.com/bashkir777/infotecsTestTask.git
- Открыть powershell
- Перейти в корневую директорию проекта (infotecsTestTask)
- Запустить стартовый скрипт
.\start.ps1
- Дождаться сборки проекта и успешного прохождения тестов, следовать инструкциям, появляющимся в терминале.
- Открыть терминал
- Перейти в корневую директорию проекта (infotecsTestTask)
- Запустить стартовый скрипт
./start.sh
- Дождаться сборки проекта и успешного прохождения тестов, следовать инструкциям, появляющимся в терминале.
- После успешной сборки и запуска Docker сети. В терминале должно появиться сообщение:
Integration tests successfully passed.
Type 'start' and press Enter to initiate the session.
- После того как вы введете 'start', автоматически запустится команда 'help', которая выведет краткое описание работы команд:
use 'help' to see the list of available commands.
use 'add <name>' to create new student.
use 'remove <id>' to remove student by id.
use 'info <id>' to see student's info.
use 'print' to see the list of students sorted by name.
use 'switch_mode' to switch ftp mode (by default it is passive).
use 'push' to save your changes.
use 'exit' to finish session.
- Обратите внимание, что для того чтобы сохранить внесенные изменения, необходимо использовать команду push.
- Чтобы закончить сеанс можно использовать команду exit, она закроет приложение и остановит Docker сеть.
Тесты запускаются автоматически.
Unit тесты будут запущены при сборке ftp-client-а.
Integration тесты будут запущены после сборки и запуска сети Docker.
Unit тесты нацелены на проверку корректности работы приложения со списком студентов, они включают в себя следующие проверки:
- Студент корректно добавляется
- Студент корректно удаляется
- Получение студента по id работает корректно
- Очередь студентов корректно сериализуется/десериализуется
Integration тесты нацелены на проверку корректности работы подсистемы ftp-client, отвечающей за взаимодействие с ftp сервером, они включают в себя следующие проверки:
- Файл успешно загружается на ftp-сервер при использовании пассивного режима.
- Файл успешно загружается на ftp-сервер при использовании активного режима.
- Файл успешно скачивается с ftp-сервера при использовании активного режима.
- Файл успешно скачивается с ftp-сервера при использовании пассивного режима.