Jak zapewnić dostępność systemów dla 250 000 użytkowników? Sprawdź, jak eksperci Sii Polska pomogli usprawnić testy wydajnościowe w IG Group
Wydajność i dostępność systemów maklerskich jest priorytetem dla IG Group, lidera branży finansowej, obsługującego prawie 250 000 klientów w ponad 140 krajach na całym świecie. Aby utrzymać je na najwyższym poziomie, firma poprosiła Sii Polska o pomoc w usprawnieniu procesu testów wydajnościowych. Rezultatem współpracy były między innymi zwiększenie pokrycia testami wydajnościowymi wszystkich głównych aplikacji firmy oraz całkowite zautomatyzowanie procesu ich uruchamiania.
Wymagający projekt na globalną skalę
IG Group, świadcząc usługi dla klientów w ponad 140 krajach, oferuje obsługę 17 000 rynków finansowych w zakresie m.in. akcji, indeksów giełdowych oraz rynków Forex. To czyni firmę światowym liderem w branży. W związku z dynamicznym rozwojem oraz wieloma nowymi projektami, IG stanęło przed wyzwaniem zwiększania zakresu testów wydajnościowych. Pomimo bardzo dobrze ułożonych procesów testowych i wdrożonej automatyzacji, dalszy rozwój testów okazał się niemożliwy bez pomocy z zewnątrz.
– To naturalne, że światowy lider obsługujący prawie 250 000 klientów na całym świecie zwraca szczególną uwagę na jakość i utrzymuje wydajność oraz dostępność swoich systemów na najwyższym poziomie – mówi Rafał Dybus, Account Director w Sii Polska, odpowiedzialny za współpracę z IG Group – Jesteśmy dumni, że to właśnie Sii zostało zaproszone do współpracy przy usprawnieniu testów wydajnościowych w IG – dodaje.
– Gdy na etapie rozmów i rozpoznawania potrzeb otrzymywaliśmy informacje o złożoności architektury rozwiązania, ilości zalogowanych w tym samym czasie użytkowników oraz spodziewanych czasach odpowiedzi, wiedzieliśmy, że współpraca z IG będzie wymagająca i ciężko będzie włożyć ją w ramy typowego projektu. Potraktowaliśmy to jako ekscytujące wyzwanie – mówi Artur Dudek, Test Development Engineer w Sii Polska.
Usprawnienie procesu testów wydajnościowych
Początkowo eksperci Sii odpowiadali za dodawanie do zasobów testowych nowych skryptów pokrywających kolejne funkcjonalności. Współpraca jednak błyskawicznie się rozwinęła i w ciągu kilku kolejnych tygodni Sii wsparło IG również w rozbudowie automatyki testów wydajnościowych. Do procesu dodano InfluxDB, Kafka oraz Grafana, których głównym zadaniem było przekazywanie oraz przechowywanie wyników testów. Dodatkowo, narzędzia miały umożliwić ich analizę, w szczególności sprawdzanie pod kątem spełniania wymagań dotyczących wydajności.
Innym ważnym wyzwaniem, w którym Sii wsparło IG była zmiana narzędzia do wykonywania testów wydajnościowych.
– Gdy zaczynamy mierzyć czas odpowiedzi na poszczególne zapytania w milisekundach, każdy szczegół ma znaczenie – zaznacza Adam Romanowicz, IG Head of QA. – IG poświęciło dużo pracy na poszukiwanie narzędzi, które najlepiej sprawdzą się w naszym środowisku i zagwarantują odpowiedni pomiar wydajności.
Od testów do wsparcia w obszarze rozwoju oprogramowania
Efektem rocznej współpracy Sii i IG są:
- znaczące zwiększenie pokrycia testami wydajnościowymi wszystkich głównych aplikacji, co pozwoliło na zbudowanie 10 razy większej ilości realistycznych scenariuszy testowych,
- uproszczenie przygotowania nowych testów do minimum,
- całkowite zautomatyzowanie procesu uruchamiania testów.
– Obecnie testy w IG uruchamiają się samodzielnie, a wyniki zbierane są w jednym miejscu. Pozwala to testerowi skoncentrować się na analizie wyników oraz umożliwia wprowadzenie w proces przygotowania nowych faz testów UNIT i SANITY, dzięki czemu dostarczane skrypty są najwyższej jakości – mówi Artur Dudek. – Wszystkie te optymalizacje sprawiły, że teraz testy mogą być uruchamiane jednocześnie na wielu środowiskach, na różnych etapach pracy nad oprogramowaniem. Wisienką na torcie jest oczywiście możliwość wcześniejszego i bardziej precyzyjnego wykrywania problemów wydajnościowych – podsumowuje.
Udana współpraca w zakresie testów pozwoliła na poszerzenie jej w obszarze rozwoju oprogramowania w technologiach takich jak m.in. Java, JavaScript, Python, C++ czy Android.
– Od lat wyznaję zasadę, że podstawą dobrej współpracy z klientem jest utrzymywanie dobrych relacji, a takie relacje można wypracować wyłącznie dostarczając usługi na najwyższym poziomie oraz odpowiednio wykwalifikowanych specjalistów. Efektem rocznej współpracy z IG jest oddelegowanie ponad 25 konsultantów, którzy wspierają kilka kluczowych projektów i zespołów po stronie klienta. To pokazuje, że jesteśmy w stanie sprostać nawet najwyższym oczekiwaniom organizacji tak wymagających jak IG – mówi Rafał Dybus.
Żeby dowiedzieć się więcej o testach wydajnościowych w Sii, sprawdź naszą stronę.