Для проверки данных от клиентов разработайте приложение, которое позволит провести валидацию на корректность данных. Результат проверки необходимо фиксировать в документе ТестКейс.docx.
Сначала заполните в документе ТестКейс.docx столбец "Действие" и "Ожидаемый результат" используя предоставленный текстовый редактор. Добавьте закладки в столбец "Результат". Необходимо провести валидацию ФИО клиента на вхождение запрещенных символов. Проверьте два любых критерия.
Для эмуляции отправки данных от клиента Вам необходимо запустить приложение Методы эмулятора описаны в файле api_info.pdf.TransferSimulator.exe.
Я написал простенький эмулятор на питоне server.py. Возвращается ФИО в которое случайным образом добавляется "мусор".
Макет формы представлен на рисунке.
При нажатии на кнопку "Получить данные" данные загружаются с эмулятора и отображаются на форме.
После нажатия на кнопку "Отправить результат теста" происходит проверка данных по заполненному шаблону, и результат проверки отображается на форме и в соответствующей строке таблицы в столбце "Результат".
Важно: Разрабатывать API Вам не нужно. Используйте предоставленный API.
Необходимые приложения (находятся в каталоге data этого репозитория): api_info.pdf,TransferSimulator.exe, ТестКейс.docx, Требования к разработке.pdf, Настройка ПК для эмулятора.pdf
Задание, ИМХО, написано криво. Своими словами: Вы должны написать оконное приложение с двумя кнопками (скрин есть выше). При клике на кнопку "Получить данные" вы должны получить данные из АПИ (http сервер прилагается) и показать полученные данные в окне (справа от кнопки). При клике на кнопку "Отправить результаты теста" Вы должны вызвать свой метод проверки и результат проверки вывести справа от кнопки. Потом руками переписать полученные данные в приложенный файл ТестКейс.docx.
Получение данных из АПИ
Для "разбора" json-строки (которую возвращает сервер) используется библиотека Newtonsoft.json, которую нужно установить из NuGet
// обработчик клика на кнопку
private void GetFIOFromApi(object sender, RoutedEventArgs e)
{
HttpClient client = new HttpClient();
// получение "тела" ответа от АПИ
var body = client.GetStringAsync("http://localhost:4444").Result;
// разбор полученной JSON-строки в объект
JObject jObject = JObject.parse(body);
// из объекта получаем значение по ключу
FullNameTextButton.Text = JObject["value"].ToString();
}
Проверка валидности ФИО
Вариантов может быть несколько: либо создать массив запрещённых символов и перебрать их в цикле сравнив с ФИО из предыдущего пункта, либо написать регулярку (что на мой взгляд правильнее)
Ниже пример проверки с выводом на консоль, Вам нужно выводить в текстовое поле вашего оконного приложения.
Console.Write(jObject["value"].ToString());
if (Regex.IsMatch(jObject["value"].ToString(), @"[А-Яа-яЁё]+\s+[А-Яа-яЁё]+\s+[А-Яа-яЁё]+"))
Console.WriteLine(": Успешно");
else
Console.WriteLine(": Не успешно");
ТестКейс.docx| Действие | Ожидаемый результат | Результат (Успешно/Не успешно) |
|---|---|---|
| Колесников Евгений Иванович | Успешно | Успешно |
| Кропинов! Андрей Михайлович | Не успешно | Не успешно |
| Сергеев# Иван Сергеевич | Не успешно | Успешно |
В идеале "Ожидаемый результат" и "Результат" должны совпадать