Wydanie Toxiproxy 2.3, proxy do testowania odporności aplikacji na problemy z siecią

Shopify, jedna z największych platform e-commerce, wypuściła Toxiproxy 2.3, serwer proxy zaprojektowany do symulowania awarii i anomalii sieci i systemu w celu testowania wydajności aplikacji w przypadku wystąpienia takich warunków. Program wyróżnia się udostępnieniem API dla dynamicznie zmieniającej się charakterystyki kanału komunikacyjnego, które można wykorzystać do integracji Toxiproxy z systemami testów jednostkowych, platformami ciągłej integracji i środowiskami programistycznymi. Kod Toxiproxy jest napisany w Go i rozpowszechniany na licencji MIT.

Pomiędzy testowaną aplikacją a usługą sieciową, z którą ta aplikacja współdziała, działa serwer proxy, po czym może symulować wystąpienie określonego opóźnienia podczas odbierania odpowiedzi z serwera lub wysyłania żądania, zmieniać przepustowość, symulować odmowę przyjęcia połączeń , zakłócać normalny postęp nawiązywania lub zamykania połączeń, resetować nawiązane połączenia, zniekształcać zawartość pakietów.

Aby kontrolować działanie serwera proxy z aplikacji, udostępnione są biblioteki klienckie dla Ruby, Go, Python, C#/.NET, PHP, JavaScript/Node.js, Java, Haskell, Rust i Elixir, które umożliwiają zmianę interakcji sieciowej warunki na bieżąco i natychmiast oceń wynik. Aby zmienić charakterystykę kanału komunikacyjnego bez dokonywania zmian w kodzie, można wykorzystać specjalne narzędzie toxiproxy-cli (zakłada się, że Toxiproxy API jest wykorzystywane w testach jednostkowych, a narzędzie może być przydatne do przeprowadzania interaktywnych eksperymentów).

Wśród zmian w nowej wersji jest włączenie obsługi punktu końcowego klienta dla HTTPS, rozdzielenie typowych procedur obsługi testów na osobne pliki, implementacja interfejsu API Client.Populate, obsługa platform armv7 i armv6 oraz możliwość zmiany poziom logowania dla serwera.

Źródło: opennet.ru

Dodaj komentarz