Пишу тесты на Java+Wedriver. Встала следующая задача. На сайте есть поле для ввода ключевого слова поиска, далее после набора текста, сервер сразу пресылает результат в формате Json и далее на стороне клиента JS рисует результаты поиска в удобном виде.
Хотелось бы узнать, есть ли какой нибудь способ для получения этого Json, чтоб далее распарсить его и проанализировать?
К сожалению конкретную функцию я не знаю. К тому же Json формируеться на сервере. Яркий пример, о чем я говорю, можно посмотреть на примере сайта https://visa.qiwi.com/ Если в поле "Поиск" ввести провайдера, например "mts", то в Network можно увидеть, что с сервера пришел ответ json.action содержащий нужный Json. Вот с ним и хочеться поработать
Тесты должны тестировать то, что видит пользователь. Если результаты поиска должны быть показаны на экране, допустим, в виде таблице, то и надо протестировать, что появится таблица с правильными данными. А то, каким образом она там появится - это детали реализации, это тестировать не нужно. Сегодня там JSon, завтра программисты решать использовать вместо него XML или ещё что-нибудь - тесты не должны от этого меняться. Функциональность же не изменилась.
Ну то что касается части тестирования, не совсем соглашусь с предыдущим комментарием. Вопрос стоит в том что изначально тестируется. Если тестится сам ресурс, и система поиска то все верно, а если же нужно протестить API то порой действительно нужно вытаскивать определенные данные из Json. Как получить сам Json? я получал следующим образом:
Если не совсем понятно как обращатся к ващему сервису через API то это уже вопрос к разработчикам самого ресурса.
P.S. а если нужно еще и обрабатывать Json (получать в виде переменной определенные поля/значения) то обратитесь к JS дэву который легко сделает Вам за 2-5 минут обработку вашего файлика)