Серия учебных пособий на уровне няни «Очистка сломанной печени» - Учебное пособие по игре с артефактом захвата пакетов Чарльза (11) - Как Чарльз имитирует слабую сетевую среду
Серия учебных пособий на уровне няни «Очистка сломанной печени» - Учебное пособие по игре с артефактом захвата пакетов Чарльза (11) - Как Чарльз имитирует слабую сетевую среду

1.Предисловие

Чжан Сан: «Программное обеспечение, которое я написал, такое странное. При хорошей сети проблем вообще нет, но оно явно зависает при плохом сигнале. Кажется, что я могу только сидеть на корточках в ванной, лифте или метро ( сигнал плохой), чтобы исправить ошибку».

Чарльз: «Хахаха,Глупый мальчик,Я просто принес с собой свой слабый сетевой инструмент.,существоватьProxy-->Throttle В разделе «Настройка» не забудьте установить флажок «Включить» перед использованием. Throttling 。”

Чарльз моргнул: «Если вы хотите указать веб-сайт, вы можете установить флажок «Только для выбранных хостов», а затем добавить указанный элемент хостов в нижней части диалогового окна».

2. Введение

В онлайн-средах обычно есть ошибки, вызванные низкой скоростью интернета.,Невозможно воспроизвести на этом аппарате,Я был очень растерян в тот момент,Если вы считаете удаленное управление проблематичным,Рекомендуетсяthrottle。ПоддержкаBandwidth(пропускная способность)、Использование (процент использования)、Туда и обратно (задержка туда и обратно)、MTU(байт)Настроить,И поддерживает 3G/4G или другие сетевые режимы.

Если мы просто хотим смоделировать медленную сеть определенного веб-сайта, Чарльз может помочь вам решить проблему, и именно на этом мы сосредоточимся сегодня.

Сценарии применения приложения тесно связаны с использованием людьми, и сетевая среда изменчива. Тестирование слабой сети приложения становится очень важным. Поэтому, когда мы тестируем приложение, нам необходимо тестировать различные сетевые форматы, а не тестировать и моделировать сетевые условия. изменение сценариев применения приложений. При разработке мобильных устройств нам часто необходимо смоделировать медленную сеть или сеть с высокой задержкой, чтобы проверить, нормально ли ведет себя приложение в мобильной сети (например, имитировать время ответа приложения, когда сеть работает медленно). Чарльз оказывает большую поддержку этому требованию.

3. Сетевые тестовые примеры

Давайте сначала кратко рассмотрим примеры тестирования сети, как показано на рисунке ниже:

4. Сосредоточьтесь на тестировании слабых сетей

Основываясь на тестовых примерах сети, давайте посмотрим на следующие моменты, на которых нам необходимо сосредоточиться:

Есть ли дружелюбное сообщение, когда приложение реагирует медленно?

Если у приложения слабая сеть, при отправке данных не будут создаваться дублирующиеся данные.

Приложение не выйдет из строя или не будет ANR.

Хорошо, благодаря предыдущим теоретическим знаниям мы примерно знаем, что такое сетевой тест. Далее брат Хонг объяснит, как использовать Чарльза для моделирования слабой сетевой среды.

5.Чарльз настраивает слабое сетевое окружение.

1.Откройте Чарльза,Нажмите【Proxy】-->【Throttle Settings】 . Как показано ниже:

2. Проверьте【 Enable Дросселирование] включается режим ограничения скорости. Как показано ниже:

Описание поля параметра конфигурации настройки дроссельной заслонки:

Only for selected hosts : Указывает, что только для выбранного доменного имени действуют слабые сетевые ограничения. Как показано на рисунке выше, ограничиваются только запросы для доменного имени localhost:9999, а другие запросы не ограничиваются. Если флажок не установлен, все запросы будут ограничены. ;

Throttle preset : вы можете выбрать скорость сети для моделирования (это настройка сети по умолчанию для Чарльза). , раскрывающиеся варианты сверху вниз, скорость сети становится все лучше и лучше.

ADSL: разновидность технологии DSL, полное название — Asymmetric Digital Subscriber Line (Асимметричная цифровая абонентская линия), которую также можно назвать асимметричной цифровой абонентской петлей. Это новый метод передачи данных.

VDSL: Это асимметричная технология DSL, полное название — Очень Высокоскоростная Цифровая Абонентская Линия. Как и технология ADSL, VDSL также использует витые пары для передачи голоса и данных. VDSL использует существующие телефонные линии для установки VDSL, и на стороне пользователя требуется только установить модем VDSL. Самое главное, нет необходимости перенаправлять или менять линии для широкополосного доступа в Интернет.

ISDN: Цифровая сеть с интеграцией услуг (ISDN) — это международный стандарт цифровых телефонных сетей и типичная сетевая система с коммутацией каналов. Согласно рекомендациям МСЭ, ISDN — это сеть связи, разработанная на основе цифровой телефонной сети IDN, которая может поддерживать различные услуги, включая телефонные и нетелефонные услуги.

Bandwidth —— Пропускная способность, то есть скорость передачи данных по восходящей и нисходящей линии связи.

utilisation —— Загрузка полосы пропускания, загрузка представляет собой процент от общей пропускной способности, у большинства современных составляет 100%.

round-trip latency —— Запрос двусторонней задержки, единица измерения — мс. Задержка туда и обратно измеряет задержку в миллисекундах первой двусторонней связи между клиентом и удаленным сервером. Он используется от клиента к серверу и Каждый запрос от сервера к клиенту 。

MTU —— Максимальная единица передачи, то есть максимальный размер TCP-пакета, может более реалистично моделировать уровень TCP и пакетизацию каждой передачи.

Releability —— Относится к надежности соединения, часто называемой потерей пакетов. Имеется в виду показатель надежности 10кб. Используется для моделирования нестабильности сети. Надежность – это мера вероятности полного отказа соединения. Это очень полезно для моделирования ненадежных условий сети. Надежность определяется как вероятность успешной передачи сообщения размером 10 КБ. Значение 50% означает, что половина всех передач размером 10 КБ будет успешной. Письма большего размера или сообщения меньшего размера с большей или меньшей вероятностью завершатся ошибкой, поэтому передача размером 20 КБ составит только 25 % (1/2 * 1/2) вероятность успешной передачи и5киб составляет около 70% (0,5 квадратного корня).

Stability —— Стабильность соединения часто называют джиттером сети. Это также влияет на доступность полосы пропускания. Используется для моделирования мобильных сетей, в которых соединения мобильных сетей обычно ненадежны. Стабильность — это мера вероятности того, что соединение нестабильно и, следовательно, снижает качество. Это полезно для моделирования сетей, например сетей мобильной связи, в которых качество соединения регулярно бывает плохим. Если соединение нестабильно, качество соединения будет случайным образом падать в пределах диапазона нестабильного качества. Это значение качества затем применяется к доступной полосе пропускания в качестве еще одного коэффициента масштабирования.

unstable quality range(Нестабильный диапазон массы) Настройки здесь в основном относятся к диапазону в настройках Стабильности. Например, если стабильность установлена ​​на уровне 70%, то нестабильность можно установить на уровне от 20 до 30.

3. Настройте [Тоттл предустановка], выберите другое сетевое окружение. Как показано ниже:

4. Если вы хотите ограничить скорость отдельных доменных имен, установите флажок [Только для выбранных хостов], а затем добавьте соответствующее доменное имя.

5. Наконец нажмите [ОК].

6. После настройки,в это время,Маленький значок черепахи на Чарльзе горит,Указывает, что моделирование слабой сети включено.,Для тестирования можно использовать слабую сеть. После использования снова нажмите на маленькую черепаху, чтобы освободить слабую сеть, как показано ниже:

6. Настройте параметры сети по умолчанию.

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

2. Введите имя предустановки и нажмите «ОК» для успешного сохранения. Затем вы сможете найти настроенные сетевые настройки в раскрывающемся списке «Пресет дроссельной заслонки», как показано на рисунке ниже:

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

7. Слабая практика тестирования сети

Для интернет-продуктов правилом является то, что время ответа на запрос должно быть менее 3 секунд, что считается отличным, если оно составляет 3-5 секунд, то оно считается приемлемым; Время ответа на запрос теста интерфейса на самом деле составляет одинHTTPПолное время запросаи。

1. Чтобы смоделировать запрос без включения слабой среды, сначала посмотрите на нормальное время сетевого запроса. Продолжительность означает, что время ответа на запрос составляет 2 мс, как показано на рисунке ниже:

2. Включите слабое сетевое окружение – установите сетевое окружение модема 56 Кбит/с и проверьте время ответа, как показано на рисунке ниже. Время ответа составляет 13 мс, а интерфейс, очевидно, намного медленнее, как показано на рисунке ниже:

8. Резюме

Текущая сетевая среда приложений относительно сложна.,Сетевые стандарты включают сети 2G, 3G, 4G и 5G.,Также растет количество общедоступных Wi-Fi. Различные сетевые среды и различия в сетевых стандартах,Все это окажет определенное влияние на использование приложения пользователями. кроме того,Текущие сценарии использования приложений постоянно меняются.,Например, вход в метро, ​​посадка в автобус, вход в лифт и т. д.,Это делает тестирование слабой сети особенно важным. Если приложение не обрабатывает различные сетевые исключения, совместимые,Тогда пользователи могут столкнуться с такими проблемами, как сбои приложений, ANR (Android не отвечает) и потеря данных в повседневной жизни. поэтому,тест сети приложений,В частности, особенно важно тестирование слабой сети. В этой статье рассматриваются ключевые моменты сетевого тестирования (в основном для приложений) и способы использования Charles для тестирования слабой сети.,Пусть каждый имеет предварительное представление о сетевом тестировании. хорошо,Сегодня еще не рано,Брат Хун объяснит это и поделится здесь.,Спасибо за ваше терпеливое чтение,Надеюсь, это поможет.

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 и детали кода