Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bashkir777/infotecstesttask
test task for an internship at Infotecs (accepted solution)
https://github.com/bashkir777/infotecstesttask
accepted-solution docker docker-compose ftp-client java8 maven testng
Last synced: 25 days ago
JSON representation
test task for an internship at Infotecs (accepted solution)
- Host: GitHub
- URL: https://github.com/bashkir777/infotecstesttask
- Owner: bashkir777
- Created: 2024-08-07T11:10:12.000Z (3 months ago)
- Default Branch: master
- Last Pushed: 2024-08-09T06:12:57.000Z (3 months ago)
- Last Synced: 2024-09-30T13:01:24.083Z (about 1 month ago)
- Topics: accepted-solution, docker, docker-compose, ftp-client, java8, maven, testng
- Language: Java
- Homepage:
- Size: 80.1 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Тестовое задание для infotecs
## Инструкция по сборке и запуску проекта
- Скачать исходный код проекта:
```bash
git clone https://github.com/bashkir777/infotecsTestTask.git
```### Для Windows
- Открыть powershell
- Перейти в корневую директорию проекта (infotecsTestTask)
- Запустить стартовый скрипт
```powershell
.\start.ps1
```
- Дождаться сборки проекта и успешного прохождения тестов, следовать инструкциям, появляющимся в терминале.
### Для MacOS и Linux
- Открыть терминал
- Перейти в корневую директорию проекта (infotecsTestTask)
- Запустить стартовый скрипт
```bash
./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 ' to create new student.
use 'remove ' to remove student by id.
use 'info ' 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-сервера при использовании пассивного режима.