Учебные пособия расширенной серии «Hematemesis» — Учебное пособие по захвату пакетов Fiddler (18) — Как протестировать интерфейс Fiddler, моя мама больше не беспокоится, что я не знаю, как протестировать интерфейс
Учебные пособия расширенной серии «Hematemesis» — Учебное пособие по захвату пакетов Fiddler (18) — Как протестировать интерфейс Fiddler, моя мама больше не беспокоится, что я не знаю, как протестировать интерфейс

1. Введение

Самым большим преимуществом Fiddler является захват пакетов. Большинство используемых нами функций также основаны на функции захвата пакетов. Fiddler также очень удобен для тестирования интерфейса.

Если ваш руководитель или разработчик поручает вам тестирование интерфейса, но не предоставляет вам документ интерфейса (поскольку в цикле разработки нет времени на создание документа интерфейса), как вы будете выполнять работу по тестированию? В настоящее время вы можете использовать Fiddler для непосредственного захвата пакета, копирования параметров запроса и их изменения. Затем в это время мы будем использовать вкладку «Композитор» Fiddler.

2.Composer

Composer позволяет отправлять на сервер собственные запросы. Вы можете вручную создать новый запрос или перетащить существующий запрос в таблицу сеансов (левая кнопка мыши и перетаскивать его, пока в Composer не появится зеленый цвет). Как показано ниже:

Composer поддерживает ручное создание запросов http, https и ftp. Нажмите на интерфейс вкладки композитора, и ниже мы увидим строку на английском языке.

use this page to compose a Request。you can clone a prior request by dragging and dropping a session from the Web Sessions list。

Это предложение означает, что эта страница используется для создания запроса. Вы можете проверить или клонировать предыдущий запрос, перетащив сеанс в список веб-сеансов.

Увидев это, вы понимаете использование этого интерфейса. И там указано, что запросы можно клонировать перетаскиванием, а это значит, что не нужно вводить их по одному при построении. Можно сначала перетаскивать, а потом изменять части.

3. Анализ функций интерфейса

Опишите функции интерфейса Composer согласно отмеченным позициям на рисунке ниже.

1. Метод запроса: нажмите, чтобы выбрать протокол запроса: получение, отправку и т. д.

2.адресная строка URL: введите запрошенный URL-адрес.

3. Заголовок запроса. Третья область может вводить информацию заголовка запроса.

4. Тело запроса: при отправке запроса в эту область вводится информация о теле запроса.

5. Выполнение: нажмите кнопку «Выполнить», чтобы выполнить запрос.

6.http-версия: вы можете проверить http-версию.

7. История запросов. После завершения выполнения в области «История» справа будет создана запись истории.

Конкретные детали:

1.parsed

проанализировано: указывает весь проанализированный HTTP-запрос, включая строку запроса, заголовки запроса и тело запроса. (Это наиболее интуитивно понятное отображение запросов Request). В переводе с английского означает парсинг. Разделяется на три части по составу протокола запроса, что также совпадает с семантикой слова парсинг.

Строка запроса: здесь вы можете установить метод запроса, путь запроса и номер версии протокола.

Заголовки запросов: под строкой запроса находятся заголовки запросов.

Тело запроса: укажите в этом поле тело запроса. Если это метод GET, его не нужно заполнять.

2.Raw (исходный запрос)

Raw: это настоящий исходный HTTP-запрос, который представляет собой неанализируемое отображение. Параметр «Необработанный» предоставляет простое текстовое поле, в которое вы можете ввести http-запрос, который хотите создать. Он частично совпадает с функцией «Разобранный». Эта вкладка обычно используется для построения.

3.ScratchPad

Блокнот: может хранить собранные HTTP-запросы и несколько разных запросов. Английский перевод — это временный регистр. По сути, он имеет ту же функцию и может сохранять несколько http-запросов. Просто перетащите ответный HTTP-запрос в его текстовое поле, и Fiddler автоматически заполнит его информацией, связанной с сеансом. Вы можете сравнить запросы в этом поле. Вы также можете выбрать указанную информацию запроса и отправить ее при выполнении.

4.options

Optinos: запросите варианты запроса Optinos.

  • Сеанс проверки: используйте тот же сеанс для подключения (в случае того же доменного имени или хоста) и проверки сеанса. Когда эта функция включена и воспроизводится, она автоматически переходит в функциональный модуль «Инспекторы» для проверки HTTP-запросов и ответов. .
  • Исправить заголовок Content-Length: при отправке запроса на публикацию автоматически добавляется или исправляется Content-Length в заголовке. При использовании POST-запроса для воспроизведения, если заголовок запроса Content-Length отсутствует, Fiddler автоматически добавит этот заголовок. Если он есть, но размер тела запроса неправильный, он автоматически исправит его. Проверено по умолчанию.
  • Следовать за перенаправлением: автоматически отслеживать запросы с указанием местоположения в кодах состояния HTTP 301 и 302. Запросы 301 и 302 будут автоматически перенаправлены.
  • Автоматическая проверка подлинности: автоматическая проверка подлинности, включая проверку подлинности NTLM, http 401, http 407.
  • Tear Off: Превратите Composer в плавающее окно. Как только эта кнопка будет нажата, весь композитор будет удален из фидера.

UI Options:

Отрыв: эта функция выводит функцию Composer в плавающее окно с исходными параметрами функции Fiddler. Если вам не нужно закрывать это окно напрямую, оно вернется в исходное состояние.

5.Запросы журнала (записи запросов)

Журнал запросов: записывайте и сохраняйте воспроизведенные HTTP-запросы. Если этот флажок установлен, построенная запись будет сохранена. История строительства будет отображаться под опциями.

6.Request Body

Тело запроса: установите здесь содержимое тела запроса, обычно используемое в запросах POST.

Тип данных тела запроса

Существует четыре распространенных типа данных отправки сообщений:

1. Первый тип: application/json: это наиболее распространенный формат json, он также очень дружелюбен и популярен среди друзей, а именно:

Язык кода:javascript
копировать
{"input1":"xxx","input2":"ooo","remember":false}

2. Второй тип: application/x-www-form-urlencoded: собственная форма формы браузера. Если атрибут enctype не установлен, данные в конечном итоге будут отправлены в режиме application/x-www-form-urlencoded.

Язык кода:javascript
копировать
input1=xxx&input2=ooo&remember=false

3. Третий тип: multipart/form-data: этот тип имеет формат формы, а типы данных следующие:

Язык кода:javascript
копировать
------WebKitFormBoundaryrGKCBY7qhFd3TrwA

Content-Disposition: form-data; name="text"

title

------WebKitFormBoundaryrGKCBY7qhFd3TrwA

Content-Disposition: form-data; name="file"; filename="chrome.png"

Content-Type: image/png

PNG ... content of chrome.png ...

------WebKitFormBoundaryrGKCBY7qhFd3TrwA--

4. Четвертый тип: text/xml: это напрямую передаваемый формат XML.

Язык кода:javascript
копировать
<!--?xml version="1.0"?-->

<methodcall>

<methodname>examples.getStateName</methodname>

<params>

<param>

<value><i4>41</i4></value>

</params>

</methodcall>

7.Upload file

Загрузить файл: эта функция предназначена для локального создания HTTP-запроса, а затем его загрузки в Fiddler для воспроизведения.

8.Выполнить

Выполнить: кнопка для выполнения функции воспроизведения или выполнения нового запроса на редактирование. После нажатия этой кнопки запрос будет отправлен.

4. Практика тестирования интерфейса

4.1. Практика POST API

В настоящее время сложно найти бесплатные интерфейсы. После долгих поисков я нашел один на Python. Давайте воспользуемся этим в качестве примера.

Информация об интерфейсе:

Информация об интерфейсе

описывать

https://httpbin.org/post

адрес интерфейса

Метод запроса

HTTP POST

Параметры запроса

Параметры Формат запроса JSON

Формат параметра:

Язык кода:javascript
копировать
{
    "form": {
        "comments": "Пекин ХонгеpostТестирование интерфейса", 
        "custemail": "19182XX@qq.com", 
        "custname": "Пекин Хонге", 
        "custtel": "13045032408", 
        "delivery": "15:45"
  }
}

Итак, как использовать Fiddler для отладки запроса POST с данными в формате json. Конкретные шаги заключаются в следующем:

1. Запустите Fiddler и откройте панель Composer. Выберите POSTМетод в первом раскрывающемся списке панели Composer. запрос, как показано ниже:

2. Введите адрес интерфейса запроса, как показано на рисунке ниже:

3. Вы также можете ввести некоторую информацию заголовка запроса в заголовки запроса или не вводить ее, Fiddler автоматически сгенерирует ее для вас.

4. Введите запрошенные данные JSON в тело запроса, как показано на рисунке ниже:

5. Нажмите «Выполнить». Если вы видите результат в списке сеансов и возвращаете 200, это означает, что операция прошла успешно, как показано на рисунке ниже:

6. Проверьте результат ответа на запрос в Инспекторах. Мы заранее знаем, что интерфейс возвращает данные в формате json. Нажмите на json в части ответа, чтобы отформатировать данные для удобства чтения. Как показано ниже:

4.2GET API на практике

Информация об интерфейсе: параметризованный get Запрос, например поиск по Douban: Journey to the West, url Адрес: https://www.douban.com/search?q=Путешествие на Запад. Конкретные операции показаны на рисунке ниже:

1. Запустите Fiddler и откройте панель Composer. Выберите GETМетод в первом раскрывающемся списке панели Composer. запрос, как показано ниже:

2. Введите адрес интерфейса запроса, как показано на рисунке ниже:

3. Нажмите «Выполнить». Если вы видите результат в списке сеансов и возвращаете 200, это означает, что операция прошла успешно, как показано на рисунке ниже:

5. Резюме

 Сегодня я в основном объясняю и рассказываю, как использовать Fiddler для проведения Тестирования. Два вида метода в интерфейсе запроса,Остальные запросы аналогичны! ! ! хорошо,Сегодня еще не рано,Брат Хун объяснит это и поделится здесь.,Спасибо за ваше терпение при чтении! ! !

boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода