AkveoKontakt

Usługi automatyzacji QA dla aplikacji bankowości mobilnej

Wdrożenie kompleksowej automatyzacji QA dla aplikacji bankowości mobilnej dużego banku z Bliskiego Wschodu, obejmującej iOS i Androida, integrację z CI/CD oraz raportowanie w czasie rzeczywistym przez Slacka.

Usługi automatyzacji QA dla aplikacji bankowości mobilnej

[ Klient ]

O kliencie

Klientem jest wiodący bank na Bliskim Wschodzie, który chce przekształcić swój dział technologiczny w niezależnego dostawcę SaaS produktów bankowości cyfrowej. Jako jeden z głównych dostawców usług finansowych w regionie, jego dział IT jako pierwszy dostrzegł wartość szybkiego, zrównoważonego i wysokiej jakości dostarczania oprogramowania dzięki testom automatycznym.

9 109
Wykonanych zautomatyzowanych przypadków testowych
2
Platformy: iOS i Android
100%
Zintegrowanej automatyzacji CI/CD

[ Wyzwanie ]

Testy manualne hamujące rozwój dynamicznie rosnącej aplikacji bankowej

Sektor bankowy na Bliskim Wschodzie jest wyjątkowo dynamiczny i konkurencyjny. Koszt pozyskania użytkownika jest wysoki, dlatego każda instytucja finansowa, która chce odnieść sukces, musi działać szybko, wykazywać się zwinnością i oferować unikalne rozwiązania.

Interesariusze klienta stwierdzili, że testy manualne trwają zbyt długo i wydłużają czas wprowadzania zmian na rynek. Dlatego określili następujące wymagania:

  • Testy automatyczne pogrupowane według funkcjonalności, umożliwiające ich wybiórcze uruchamianie.
  • Możliwość samodzielnego uruchamiania testów przez każdego członka zespołu w dowolnym momencie.
  • Uruchamianie testów osobno dla każdej platformy (iOS i Android).
  • Możliwość uruchamiania, w zależności od etapu, smoke testów lub pełnych testów regresji, aby przyspieszyć testowanie przed każdym wydaniem.

[ Rozwiązanie ]

Budowa rozwiązania

Zakres prac

Zespół wdrożył proces automatyzacji QA dla wieloplatformowej aplikacji mobilnej dostępnej na iOS i Androida.

Automatyzację QA wprowadzono do projektu kompleksowo: od pierwszego projektu architektury aż po faktyczne wykonywanie testów.

  1. zaprojektowanie architektury automatyzacji testów dla istniejącej aplikacji;
  2. integracja testów automatycznych z istniejącym procesem CI/CD
  3. przesyłanie wyników testów do Jiry z XRay oraz integracja ze Slackiem w celu wysyłania powiadomień
  4. konfiguracja automatycznego uruchamiania testów za pomocą wyzwalaczy oraz według harmonogramu;
  5. wdrożenie automatycznych testów QA zarówno dla UI, jak i API

Rozwiązanie

Początkowo nasz zespół opierał się na testach manualnych, jednak liczba testów rosła wraz z liczbą funkcji. Trzeba było więc znaleźć odpowiednie narzędzia do testowania oprogramowania, które uczynią testy prostszymi i skuteczniejszymi. Wyzwanie polegało na poprawie szybkości, efektywności, precyzji i niezawodności procesu testowania.

Aby rozwiązać ten problem, nasz zespół wybrał podejście iteracyjne.

  1. Zespół QA ocenił bieżący stan aplikacji.
  2. Członkowie zespołu zaprojektowali wstępną architekturę rozwiązania do automatyzacji testów.
  3. Na koniec nasi specjaliści wspólnie z programistami zaczęli wdrażać testy i procesy CI.

Jako bazę wybrano narzędzie open source Appium, aby ograniczyć koszty. Inżynierowie Akveo zbudowali od podstaw framework automatyzacji, który pozwala uruchamiać testy wersji aplikacji na iOS i Androida na rzeczywistych i wirtualnych urządzeniach za pośrednictwem platformy SauceLabs. Jedną z mocnych stron rozwiązania była możliwość łatwego i częstego uruchamiania testów automatycznych, a tym samym częstszej weryfikacji jakości aplikacji.

Aby usprawnić proces CI, zespół wykorzystał Bitrise do planowania uruchamiania skryptów i wykonywania testów na nowo wygenerowanych buildach lub na konkretnych wersjach aplikacji przechowywanych w AWS.

Ponieważ raporty i alerty odgrywają kluczową rolę, zespół zintegrował framework automatyzacji z istniejącym narzędziem do zarządzania testami i śledzenia błędów, czyli JIRA (za pomocą wtyczki Xray), a także ze Slackiem w celu wysyłania natychmiastowych powiadomień i alertów.

Testy automatyczne przygotowano dla różnych warstw aplikacji, np. API i UI.

Nasi specjaliści stworzyli w narzędziu UI Bakery dedykowany interfejs, który zapewnia łatwy dostęp do testów i bezproblemowe ich uruchamianie. Dzięki temu członkowie zespołu mogą wykonywać testy w dowolnym momencie. Spersonalizowany formularz pozwala wybrać zakres testów dla danej funkcjonalności i uruchomić je na konkretnej wersji aplikacji.

Regresje można więc wykrywać wcześnie i mniejszym kosztem. Ponadto rozwiązanie ogranicza powtarzalne zadania inżynierów QA, przyspiesza dostarczanie produktu i zwiększa pokrycie testami.

[ Rezultaty ]

Wymierne efekty

Framework automatyzacji QA pozwolił zespołowi klienta w dowolnym momencie uruchamiać wybrane testy, wykonywać na żądanie pełne testy regresji lub smoke testy i natychmiast otrzymywać wyniki na Slacku.

Lokalne uruchamianie testów

Możliwość lokalnego uruchamiania testów automatycznych sprawiła, że pełne testy regresji po lokalnych zmianach w kodzie stały się zbędne.

Elastyczna konfiguracja testów

Możliwość swobodnego konfigurowania uruchamiania testów automatycznych według funkcjonalności, platformy, systemu operacyjnego i środowiska.

Testy regresji szybsze o 30%

Czas trwania testów regresji skrócił się o 30%.

[ Stack technologiczny ]

Technologie wykorzystane w projekcie

Frameworki testowe

AppiumPytestXRay

Języki programowania

PythonBash

Platformy i CI/CD

Sauce LabsBitriseUI Bakery

Galeria

Usługi automatyzacji QA dla aplikacji bankowości mobilnej, zdjęcie 1

[ Realizacje ]

Poznaj inne historie sukcesu

Pomogliśmy ponad 200 firmom zwiększyć ich wartość i usprawnić działanie dzięki lepszemu oprogramowaniu.

Mają Państwo pomysł na projekt?

Porozmawiajmy o Państwa celach i o tym, jak możemy pomóc je osiągnąć.

Dmitry Klim
Dmitry Klim
Head of Growth
Clutch
5900 Balcones Drive #21729, Austin, TX 78731[email protected]+1 (512) 921-9631