An open API service indexing awesome lists of open source software.

https://github.com/jcoderpaul/ftpclient-with-testng

Simple FTP client and testing its methods using the TestNG framework. Test task solution. Description in doc folder.
https://github.com/jcoderpaul/ftpclient-with-testng

console-app ftp ftp-client json regex test-ng vanila-java web-sockets

Last synced: 3 months ago
JSON representation

Simple FTP client and testing its methods using the TestNG framework. Test task solution. Description in doc folder.

Awesome Lists containing this project

README

        

### *** Задание 1 ***

Реализовать клиент для работы с FTP сервером, на котором расположен
файл с информацией о студентах кафедры в виде JSON подобной
структуры:

{
"students":
[
{
"id": 1,
"name": "Student1"
},
{
"id": 2,
"name": "Student2"
},
{
"id": 3,
"name": "Student3"
}
]
}

Клиент должен быть разработан в виде консольного приложения, принимающего на
вход логин и пароль пользователя, а так же IP-адрес FTP-сервера; после чего выводить меню, в
котором доступны на выбор следующие действия:
1. Получение списка студентов по имени;
2. Получение информации о студенте по id;
3. Добавление студента (id генерируется автоматически);
4. Удаление студента по id;
5. Завершение работы;

Целевая платформа: Linux

### *** Задание 2 (дополнительное) ***

Для разработанной программы:
1. Составить список необходимых проверок (тестов);
2. Изучить фреймворк TestNG;
3. В отдельном проекте разработать автотесты на основании
списка из п.1 с использованием фреймворка из п.2;
4. Объединить полученные тесты в test-suite и добиться их запуска.

### Требования к реализации задания:

- Тестовое задание должно быть выполнено с использованием Java SE 8. Для сборки не должны скачиваться внешние библиотеки, не входящие в состав JDK.
- Клиент должен уметь работать с FTP-сервером в двух режимах: активном и пассивном.
- Список студентов при выводе должен быть отсортирован по алфавиту.
- id студента уникален.

Результат предоставить в виде архива с исходными кодами и/или ссылкой на репозиторий github, где должен быть размещен(ы) проект(ы). В архиве также должны находиться:
1. исполняемый jar-файл клиента (в данном репозитории отсутствует);
2. [инструкция по сборке проекта](https://github.com/JcoderPaul/FTPClient-with-TestNG/blob/master/DOC/Instructions/Project_assembly_instructions.txt);
3. [инструкция по работе с приложением](https://github.com/JcoderPaul/FTPClient-with-TestNG/blob/master/DOC/Instructions/Application_instructions.txt);
4. исполняемый jar-файл автотестов (в данном репозитории отсутствует);
5. инструкция по запуску тестов и кратким обоснованием тестов. (в данном репозитории отсутствует);

Документация:
- [Описание режимов работы FTP сервер-клиент](https://github.com/JcoderPaul/FTPClient-with-TestNG/blob/master/DOC/FTP_Handbook/FTP_operating_modes.txt);
- [Список кодов ответов FTP сервера](https://github.com/JcoderPaul/FTPClient-with-TestNG/blob/master/DOC/FTP_Handbook/FTP_response_codes.txt);
- [Основные команды FTP протокола](https://github.com/JcoderPaul/FTPClient-with-TestNG/blob/master/DOC/FTP_Handbook/ShortList_FTP_commands.txt);