Моделирование переменных условий сети в тестах - PullRequest
9 голосов
/ 02 ноября 2010

Я пишу приложение для GAE / J с GWT.На моих разработчиках все работает отлично - и RPC всегда возвращаются успешно и в том же порядке.При развертывании в appengine некоторые RPC выходят из строя, и они часто возвращаются в другом порядке.

Как среда тестирования может включать такую ​​изменчивость?Есть ли хорошие инструменты, которые могут справиться с этим для appengine?

Ответы [ 4 ]

3 голосов
/ 02 ноября 2010

Взгляните на WANem:

WANem - это эмулятор глобальной сети, предназначенный для обеспечения реального опыта работы в глобальной сети / Интернете при разработке / тестировании приложений в среде локальной сети.Как правило, разработчики приложений разрабатывают приложения в локальной сети, в то время как предполагаемая цель для этого может быть, клиенты получают доступ к тому же через глобальную сеть или даже Интернет.Таким образом, WANem позволяет группе разработчиков приложений настроить прозрачный шлюз приложений, который можно использовать для имитации характеристик WAN, таких как задержка в сети, потеря пакетов, повреждение пакетов, разъединения, переупорядочение пакетов, дрожание и т. Д. WANem можно использовать для моделирования глобальной сетиУсловия сети для трафика данных / голоса и выпущены под широко приемлемой лицензией GPL v2.

http://wanem.sourceforge.net/

3 голосов
/ 02 ноября 2010

NIST Net - зрелый сетевой эмулятор.

Выход со своего сайта:

Сетевой эмулятор NIST Net является универсальным инструментом для эмуляции динамики производительности в IP-сетях. Инструмент предназначен для проведения контролируемых воспроизводимых экспериментов с чувствительными к производительности / адаптивными приложениями и протоколами управления в простой лабораторной обстановке. Работая на уровне IP, NIST Net может эмулировать критические характеристики сквозной производительности, налагаемые различными ситуациями в глобальной сети (например, потерями из-за перегрузки) или различными базовыми технологиями подсети (например, ситуациями асимметричной полосы пропускания xDSL и кабельных модемов). ).

1 голос
/ 02 ноября 2010

netem является частью основного дистрибутива Linux.Вы можете отбрасывать, дублировать, переупорядочивать и задерживать IP-пакеты с некоторой вероятностью.Модель ошибок не настолько реалистична, но должна быть достаточной для тестирования приложений. Небрежный , кажется, также полезен, но я не пробовал.

0 голосов
/ 02 ноября 2010

Я думаю, JMockit - хорошая утилита для моделирования переменных условий сети. Но я не уверен, что он подходит для вашей среды разработки.

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

...