Skip to content

test task for an internship at Infotecs (accepted solution)

Notifications You must be signed in to change notification settings

bashkir777/infotecsTestTask

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Тестовое задание для infotecs

Инструкция по сборке и запуску проекта

  • Скачать исходный код проекта:
git clone https://github.com/bashkir777/infotecsTestTask.git

Для Windows

  • Открыть powershell
  • Перейти в корневую директорию проекта (infotecsTestTask)
  • Запустить стартовый скрипт
.\start.ps1
  • Дождаться сборки проекта и успешного прохождения тестов, следовать инструкциям, появляющимся в терминале.

Для MacOS и Linux

  • Открыть терминал
  • Перейти в корневую директорию проекта (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-сервера при использовании пассивного режима.

About

test task for an internship at Infotecs (accepted solution)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published