Тест
1. Основные объекты и диаграмма классов:
⦁ Клиент (Сlient)
⦁ Перелет (Flight)
⦁ Авиакомпания (Airline)
⦁ Воздушное судно (Aircraft)
⦁ Тариф (Fare)
⦁ Аэропорт (Airport)
Клиент имеет отношение "использует" с Перелетом. Перелет имеет отношения "содержит" с Авиакомпанией, Воздушным судном, Тарифом и Аэропортом. Авиакомпания имеет отношение "управляет" с Воздушным судном. Тариф имеет отношение "определяется" с Аэропортом.
2. Структура базы данных:
Таблицы:
⦁ Clients (id, name)
⦁ Flights (id, flight_number, departure_datetime, arrival_datetime, airline_id, aircraft_id, origin_airport_id, destination_airport_id)
⦁ Airlines (id, name)
⦁ Aircrafts (id, model)
⦁ Fares (id, flight_id, fare_type, base_price, baggage_fee, hand_luggage_fee, seat_choice_fee, exchange_fee, refund_allowed)
⦁ Airports (id, name, airport_fee)
3. SQL запрос:
4. Постановка задачи программисту:
Задача: Разработать экранную форму и отчет для пользователей, которые хотят иметь возможность самостоятельно выгружать списки направлений перелета по логике, описанной в п. 3.
Требования:
1. Экранная форма должна содержать поля для ввода диапазона цен (от и до) для базового значения тарифа.
2. Пользователь должен иметь возможность запустить поиск по заданным параметрам.
3. Результаты поиска должны отображаться в таблице с колонками: направление, номер рейса, тип тарифа, базовое значение тарифа.
4. Пользователь должен иметь возможность выгрузить результаты поиска в формате CSV или XLSX.
Ожидаемый результат: Веб-форма с возможностью ввода параметров поиска, просмотра результатов и выгрузки данных в выбранном формате.
5. Список тест-кейсов для проверки работы формы и отчета:
1. Проверить, что форма корректно отображается и все элементы интерфейса размещены на своих местах.
2. Ввод корректных значений диапазона цен (например, от 3000 до 5000) и проверка корректности отображения результатов поиска.
3. Ввод некорректных значений диапазона цен (например, от 5000 до 3000) и проверка обработки ошибок или предупреждений для пользователя.
4. Ввод символов или специальных знаков в поле диапазона цен и проверка обработки ошибок или предупреждений для пользователя.
5. Проверить, что результаты поиска отображаются в таблице с корректными колонками: направление, номер рейса, тип тарифа, базовое значение тарифа.
6. Выгрузка результатов поиска в формате CSV и проверка корректности данных в файле.
7. Выгрузка результатов поиска в формате XLSX и проверка корректности данных в файле.
8. Проверить работу формы и отчета при разных разрешениях экрана и в разных браузерах.
9. Проверить, что форма и отчет корректно работают при плохом соединении с интернетом или временных проблемах с сервером.
10. Проверить корректность отображения данных на разных языках или локализациях, если таковые имеются.