Toxiproxy, рамка за симулиране на мрежови условия в тестови среди

Shopify, която разработва една от най-големите и популярни платформи за електронна търговия в мрежата, dio наскоро обяви, че пусна новата версия на прокси сървъра «Toxiproxy 2.3» който е предназначен да симулира повреди и аномалии в мрежата и системата за тестване на състоянието на приложенията, когато възникнат такива условия.

Програмата се откроява с предоставянето на API за динамична промяна на характеристиките на комуникационния канал, който може да се използва за интегриране на Toxiproxy със системи за единични тестове, в допълнение към поддържането на платформи за непрекъсната интеграция и среди за разработка.

Относно Toxiproxy

Тази рамка е специално проектиран да работи в тестови среди, CI и разработка, и поддържа детерминирана манипулация на връзки, но с поддръжка за произволен хаос и персонализиране.

общо взето, Toxiproxy се позиционира като инструмент че всички тези, които изискват извършвайте демонстрационни тестове на приложения, които нямат единични точки на отказ. Toxiproxy се използва успешно във всички среди за разработка и тестване на Shopify от октомври 2014 г.

Използването на toxiproxy се състои от две части. TCP прокси, написан в Go (какво съдържа това хранилище) и клиент, който комуникира с проксито чрез HTTP. Това конфигурира приложението така, че всички тестови връзки да преминават през Toxiproxy и след това да могат да манипулират състоянието си чрез HTTP.

С други думи, пълномощникът се стартира между приложението, което се тества, и мрежовата услуга, с която това приложение взаимодейства, след което можете да симулирате възникването на определено забавяне при получаване на отговор от сървъра или изпращане на заявка, да промените честотната лента, да симулирате отказ за приемане на връзки, да прекъснете нормалния ход на установяване или затваряне на връзки, да възстановите установените връзки, да изкривите съдържанието на пакетите.

За управление на работата на прокси сървъра от приложения са предоставени клиентски библиотеки за Ruby, Go, Python, C # /. NET, PHP, JavaScript / Node.js, Java, Haskell, Rust и Elixir, които ви позволяват да промените условия на взаимодействие в мрежата в движение и незабавно оценявайте резултата.

За да промените характеристиките на комуникационния канал, без да правите промени в кода, може да се използва специална помощна програма toxiproxy-cli (Предполага се, че Toxiproxy API трябва да се използва в тестове за единици и помощната програма може да бъде полезна за интерактивни експерименти).

Какво е новото в Toxiproxy 2.3?

Що се отнася до промените, които са включени в новата пусната версия, се споменава, че има включване на клиентски контролер за крайна точка за HTTPS.

Както и разделянето на типичните тестови драйвери в отделни файлове, внедряването на client.Populate API.

В допълнение към това се откроява и поддръжката за платформи armv7 и armv6 и възможността за промяна на нивото на регистрация за сървъра.

Инсталирайте Toxiproxy на Linux

За тези, които се интересуват да могат да инсталират тази рамка, за да могат да извършват своите тестове, те могат да направят това следвайки стъпките, които споделяме по-долу.

Ако сте потребител на Debian, Ubuntu или всяка друга дистрибуция, базирана на тях, Можете да извършите инсталацията, като отворите терминал (можете да използвате клавишната комбинация Ctrl + Alt + T) и в него ще въведете:
wget https://github.com/Shopify/toxiproxy/releases/download/v2.3.0/toxiproxy_2.3.0_linux_amd64.deb

И ние продължаваме да изпълняваме инсталацията със:
sudo apt install ./toxiproxy_2.3.0_linux_amd64.deb

В случая с тези, които са потребители на дистрибуции с поддръжка на RPM пакети, като Fedora, openSuse, RHEL, наред с други, пакетът за изтегляне е следният:
wget https://github.com/Shopify/toxiproxy/releases/download/v2.3.0/toxiproxy_2.3.0_linux_amd64.rpm

И вие инсталирате пакета, като напишете:
sudo rpm -i toxiproxy_2.3.0_linux_amd64.rpm

След като инсталацията приключи, можете да стартирате услугата, като изпълните следната команда в терминала:
sudo service toxiproxy start

И накрая, ако дИнтересувате се да можете да научите повече за това, Трябва да знаете, че кодът на Toxiproxy е написан на Go и има лиценз на MIT и можете да се консултирате с ръководството за използване на тази рамка в следваща връзка.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорник за данните: AB Internet Networks 2008 SL
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.