Bean Network Tester

Проверьте своё приложение на плохой сети

Bean Network Tester добавляет задержку, потерю пакетов и ограничение скорости одному приложению Windows. Вы увидите то, что видят ваши пользователи в поезде, в хотспоте отеля или на телефоне с одной палкой сигнала.

Это эмулятор сети, нацеленный на одну программу, а не на весь компьютер, поэтому вы можете воспроизвести медленный интернет для тестируемого приложения, пока всё остальное продолжает работать.

Скачать для Windows Смотреть код на GitHub

Бесплатно и с открытым исходным кодом по лицензии GPLv3. Windows 10 и 11, 64-разрядная. Без учётной записи и без телеметрии.

Живой ping теряет пакеты и получает задержку, пока работает программа
Добавление задержки и потери пакетов в работающее соединение.

Что он делает с вашей сетью

Замедляет её

Добавьте фиксированную или случайную задержку. Узнайте, что 300 мс пинга делают с вашим индикатором загрузки.

Теряет пакеты

Отбрасывайте, дублируйте или портите их и смотрите, восстанавливается ли приложение или просто зависает.

Ограничивает скорость

Удерживайте загрузку или отдачу на заданном числе КБ в секунду, как это делает слабая мобильная связь.

Обрывает канал

Разрывайте соединения, блокируйте порт или адрес или заставляйте сеть то появляться, то пропадать.

Целится в одно приложение

Выберите процесс, PID, адрес или порт. Остальной компьютер продолжает работать как обычно.

Повторяется точь-в-точь

Один и тот же seed воспроизводит один и тот же запуск. Это и есть разница между отчётом об ошибке и байкой.

Запуск занимает три шага

  1. Скачайте zip со страницы релизов и распакуйте где угодно.
  2. Запустите BeanNetworkTester.exe. Он сам запрашивает права администратора, потому что для перехвата трафика они нужны.
  3. Выберите готовый профиль, например «3G network», нажмите START и пользуйтесь приложением.

В том же файле есть текстовый режим, так что всё это работает и в пайплайне. Одной команды достаточно, чтобы проверить, переживёт ли ваш сервис 10 % потери пакетов:

BeanNetworkTester.exe --loss 10 --target myapp.exe --duration 60

Он останавливается сам, когда время вышло, поэтому зависший шаг не оставит после себя сломанную сеть. Добавьте --simulate, чтобы прорепетировать команду, не трогая реальный трафик.

Кто этим пользуется

Тестировщики, которым нужно воспроизвести «у меня работает». Разработчики, которым нужно, чтобы таймаут наконец-то случился. Разработчики игр, проверяющие, что лаги делают с их сетевым кодом. Все, кого хоть раз спрашивали, работает ли приложение на слабом соединении, и у кого не было честного способа это выяснить.

Как сделать что-то конкретное

Короткие руководства, в каждом из которых есть значения, которые стоит попробовать, и команда, которая это делает.

Готовы намеренно сломать собственную сеть?

Скачать для Windows