Zostaw swoje dane kontaktowe, a my wyślemy Ci nasz przegląd e-mailem
Wyrażam zgodę na przetwarzanie moich danych osobowych w celu przesyłania spersonalizowanych materiałów marketingowych zgodnie z Regulaminem. Politykę Prywatności. Potwierdzając zgłoszenie, użytkownik wyraża zgodę na otrzymywanie materiałów marketingowych
Thank you!

The form has been successfully submitted.
Please find further information in your mailbox.

Innowise jest międzynarodową firmą tworzącą oprogramowanie w pełnym cyklu założona w 2007 roku. Jesteśmy zespołem ponad 2000+ specjalistów IT tworzących oprogramowanie dla innych profesjonalistów na całym świecie. profesjonalistów na całym świecie.
O nas
Innowise jest międzynarodową firmą tworzącą oprogramowanie w pełnym cyklu założona w 2007 roku. Jesteśmy zespołem ponad 2000+ specjalistów IT tworzących oprogramowanie dla innych profesjonalistów na całym świecie. profesjonalistów na całym świecie.

Automatyzacja testów aplikacji internetowych: 50% mniej błędów produkcyjnych

Innowise zintegrowało zautomatyzowane testowanie aplikacji internetowych aby zapewnić szybkie i wolne od błędów cykle rozwoju oprogramowania.

Klient

Branża
Telekomunikacja
Region
Belgia
Klient od
2023

Nasz klient jest wiodącym dostawcą usług komunikacyjnych, który specjalizuje się w rozwiązaniach łączności internetowej, sprzedaży modemów, dostarczaniu kart SIM i konfiguracji pakietów telewizyjnych.

Szczegółowe informacje o kliencie nie mogą zostać ujawnione zgodnie z warunkami umowy NDA.

Wyzwanie

Usprawnienie procesów testowania w celu przyspieszenia wydawania wysokiej jakości oprogramowania

The client’s in-house development team had initially set up a custom framework for conducting automated tests on their web application. However, this framework didn’t perform up to the expected standards, resulting in flaky tests. The instability was compounded by a lack of proper integration with the continuous integration (CI) system. This led to delayed feedback loops and increased manual intervention by QA teams.

W obliczu tych wyzwań klient zlecił nam dostarczenie solidnego rozwiązania, które usprawniłoby procesy testowania, zmniejszyło liczbę błędów regresji i przyspieszyło cykle wydawnicze.

Wdrożenie

Rozwijanie możliwości QA poprzez strategiczną automatyzację testów

In addressing the client’s challenges, we focused on crafting a bespoke solution that would improve their procesy zapewniania jakości. Zdając sobie sprawę z nieefektywności i ograniczeń istniejącej niestandardowej struktury testowania, postanowiliśmy opracować bardziej solidną, skalowalną i wydajną strategię testowania dostosowaną specjalnie do ich potrzeb.

Dostosowanie i integracja frameworka

W oparciu o nasze doświadczenie w zautomatyzowane testowanie aplikacji internetowychOpracowaliśmy strategię opartą na dwóch frameworkach, wykorzystując zarówno Cypress, jak i Playwright do kompleksowego testowania. Wybraliśmy te frameworki ze względu na ich unikalne atrybuty, które są dobrze oceniane za ich stabilność, solidność i kompatybilność z różnymi przeglądarkami i środowiskami.

Integracja z Cypress

Our AQA engineers selected Cypress for its exceptional end-to-end testing capabilities. One of Cypress’s standout features is its native access to browser APIs without going through intermediary servers. This significantly speeds up test execution and reduces the complexity of end-to-end tests. We customized Cypress to integrate seamlessly with the client’s web applications, enabling real-time test execution and visual testing capabilities. This setup allowed us to simulate actual user interactions more accurately. This assures that all user pathways were tested thoroughly before any code was moved to production. Innowise implemented the launch of Cypress tests within GitLab, demonstrating successful test completions on a remote server following deployment. This further confirms the robustness and reliability of our testing framework in a continuous integration environment.

Integracja dramaturgów

Z drugiej strony, Playwright okazał się idealny zarówno do testowania front-endu, jak i API, ze względu na możliwość uruchamiania testów we wszystkich głównych przeglądarkach przy minimalnej konfiguracji. Obsługuje testowanie w trybie headless, co jest kluczowe dla środowisk CI, i oferuje solidne narzędzia do obsługi zdarzeń asynchronicznych i złożonych interakcji stron. Wykorzystaliśmy funkcję równoległego wykonywania testów Playwright, aby uruchomić wiele testów jednocześnie w różnych środowiskach, co znacznie skróciło całkowity czas testowania. Co więcej, bogaty zestaw interfejsów API Playwright pozwolił nam tworzyć niestandardowe skrypty testowe, które naśladowały złożone zachowania i interakcje użytkowników. Zwiększyło to zasięg i niezawodność naszych testów. Dodatkowo przeprowadziliśmy kompleksowe raportowanie za pomocą Allure, aby śledzić wyniki testów, zapewniając jasny wgląd i analizy z naszych integracji Playwright.

Strategiczna personalizacja

We configured each framework to align with the client’s existing infrastructure. Innowise team introduced plugins and extensions that enhanced the frameworks’ functionality and enabled integration with other tools in the client’s tech stack. For instance, we integrated Cypress with the client’s authentication services to handle secure login during tests. We also configured Playwright to automatically capture screenshots and videos for review in case of test failures.

Integracja CI

Inżynierowie AQA zintegrowali Cypress i Playwright z potokiem CI w Gitlab. Integracja ta pozwoliła nam skonfigurować automatyczne wykonywanie testów, które były uruchamiane przy każdym zatwierdzeniu kodu. Dzięki automatyzacji tych wykonań zapewniliśmy, że każdy nowy lub zmieniony kod został poddany dokładnym testom przed przejściem do dalszego etapu cyklu rozwoju. Taka konfiguracja nie tylko przyspieszyła proces testowania, ale także pomogła wychwycić błędy i problemy na najwcześniejszym możliwym etapie. Pomogło to zmniejszyć ryzyko przedostania się usterek do produkcji. Bezproblemowe połączenie tych frameworków z Gitlab CI ułatwiło również płynniejszy przepływ pracy, umożliwiając programistom skupienie się bardziej na opracowywaniu funkcji, a mniej na powtarzalnych zadaniach testowych.

Raportowanie na GitLab

To further bolster the QA processes, we capitalized on Gitlab’s advanced reporting tools, focusing specifically on enhancing transparency and accountability between the AQA team and managerial staff. By tailoring these tools to generate detailed, real-time reports, we provided an invaluable resource for both teams to access up-to-the-minute data on the status of various tests.

Raporty te zostały zaprojektowane tak, aby były kompleksowe, a jednocześnie łatwe do interpretacji, w tym kluczowe wskaźniki, takie jak pokrycie testami, wskaźniki niepowodzeń i czasy wykonania. Ten poziom szczegółowości zapewnił, że menedżerowie mogli szybko zrozumieć skuteczność wysiłków testowych i zidentyfikować obszary wymagające uwagi bez konieczności posiadania głębokiej wiedzy technicznej. Dla zespołu AQA raporty te służyły jako krytyczne narzędzie do śledzenia postępów, wskazywania powtarzających się problemów i walidacji jakości bazy kodu.

Rozwój architektury

Innowise opracowało skalowalną architekturę testową dostosowaną do różnorodnych testów, w tym testów dymnych, testów regresji i kompleksowych testów end-to-end. Architektura ta została zaprojektowana tak, aby wspierać natychmiastowe potrzeby projektu i stanowić podstawę dla przyszłych inicjatyw testowych. Modułowy charakter architektury pozwolił na łatwą adaptację i skalowanie. Tak więc, wraz z ewolucją wymagań klienta, struktura testowa mogła ewoluować bez konieczności wprowadzania znaczących modyfikacji.

Nasze podejście obejmowało utworzenie scentralizowanego systemu zarządzania testami, który ułatwiał organizację i śledzenie przypadków testowych, wyników i wskaźników. System ten odegrał kluczową rolę w zarządzaniu złożonością wielu typów testów i zapewnieniu spójnego przepływu pracy w cyklach testowych. Wdrażając solidne funkcje rejestrowania danych i analizy wyników, zapewniliśmy zespołowi QA narzędzia niezbędne do przeprowadzania szczegółowych ocen każdego cyklu testowego, co ma kluczowe znaczenie dla utrzymania wysokich standardów jakości oprogramowania.

Uruchamianie testów w narzędziu Xray Jira

Aby jeszcze bardziej usprawnić procesy QA, uruchomiliśmy testy przy użyciu narzędzia Xray Jira. Ta integracja pozwoliła nam śledzić i zarządzać przypadkami testowymi bezpośrednio w Jira, usprawniając komunikację i współpracę między zespołami QA i programistów. Wykorzystując potężne możliwości Xray w zakresie zarządzania testami, zachowaliśmy kompleksowy przegląd działań testowych. Zespół QA śledził również identyfikowalność od wymagań do defektów i generował szczegółowe raporty dotyczące pokrycia i wykonania testów. Integracja ta znacznie zwiększyła naszą zdolność do szybkiego wskazywania i rozwiązywania problemów, zapewniając wysoką jakość dostarczanego oprogramowania.

Szkolenie i wzmocnienie pozycji

Recognizing the critical role of knowledge transfer in the success of any technology implementation, we conducted in-depth training sessions specifically tailored to Cypress, given its pivotal role in the client’s testing strategy. These sessions were structured to empower the client’s in-house teams with the expertise required to effectively use, maintain, and extend the testing frameworks independently.

Szkolenie obejmowało szereg istotnych tematów, od podstawowych ustawień i konfiguracji narzędzi testowych po zaawansowane funkcje, takie jak tworzenie skryptów automatyzacji testów i zarządzanie środowiskiem. Obejmowało ono również praktyczne ćwiczenia mające na celu uwzględnienie rzeczywistych scenariuszy, z którymi może spotkać się zespół, zwiększając ich umiejętności rozwiązywania problemów i pewność siebie w obsłudze narzędzi.

Poza szkoleniami technicznymi, podkreśliliśmy znaczenie strategicznego podejścia do praktyk zapewniania jakości. Pokierowaliśmy zespół, jak planować i przeprowadzać testy, które są zgodne z szerszymi celami biznesowymi. Takie podejście zapewniło, że zespół był nie tylko biegły w korzystaniu z technologii, ale także biegły w integrowaniu procesów zapewniania jakości z codziennymi przepływami pracy.

Technologie

Back-end

REST API, JSON, Java

Projektowanie

Figma, Sketch, Zeplin

Usługi

Firebase (Analytics, Crashlytics, Cloud Messaging, App Distribution), GitLab, Jira, Confluence, Strapi, Slack

AQA

Unit-testing + CI/CD integration via SonarQube, Cypress, Playwright

Proces

Odkrywanie i planowanie

Projekt rozpoczął się od spotkań odkrywczych, aby dogłębnie zrozumieć specyficzne potrzeby i wyzwania. Ta faza była kluczowa dla skonfigurowania Cypress i Playwright, zapewnienia ich kompatybilności z istniejącymi systemami klienta oraz przygotowanie podstaw do płynnej integracji.

Rozwój i integracja

Dostosowaliśmy Cypress i Playwright do unikalnych wymagań testowych klienta i zintegrowaliśmy te frameworki z potokiem CI Gitlab. Integracja ta zautomatyzowała proces testowania, umożliwiając wczesne wykrywanie i rozwiązywanie problemów oraz przyspieszając i przyspieszenie cyklu rozwoju.

Szkolenie i przekazanie

Nasz specjalista AQA przeprowadził kompleksowe sesje szkoleniowe na Cypress, aby wyposażyć zespół klienta w umiejętności samodzielnego zarządzania i optymalizacji struktur testowych. Dostarczyli również szczegółową dokumentację i najlepsze praktyki w celu wsparcia bieżącej konserwacji i ulepszania systemów.

Komunikacja i zarządzanie projektami

Przez cały czas trwania projektu utrzymywaliśmy przejrzystą komunikację za pośrednictwem Slack i zarządzaliśmy zadaniami i postępami za pośrednictwem Jira. Takie podejście zapewniło, że wszyscy interesariusze byli wszyscy interesariusze byli konsekwentnie dostosowani, a projekt był dobrze skoordynowany i na dobrej drodze.

Zespół

1

Kierownik projektu

1

Kierownik zespołu

1

Lead Automation QA Engineer

1

Analityk danych testowych

4

Inżynierowie automatyzacji kontroli jakości / eksperci SDET

Wyniki

Szybszy cykl wydawania oprogramowania i 2x mniej błędów produkcyjnych

Po pomyślnym wdrożeniu zautomatyzowanych ram testowania, klient przeszedł na solidne środowisko automatyzacji testów, które zapewnia znaczące usprawnienia operacyjne.

  • Zwiększona wydajność uwalniania: Wykorzystując automatyzację, drastycznie zmniejszono zależność od czasochłonnego testowania ręcznego, co pozwoliło przyspieszyć cykl wydawania oprogramowania.
  • Redukcja błędów: Ulepszone możliwości testowania zaowocowały spadkiem liczby błędów regresji o 50%, co dowodzi skuteczności procesów automatyzacji testów.
  • Zwiększona stabilność środowiska testowego: Dzięki dopracowaniu i optymalizacji konfiguracji testów znacznie zminimalizowaliśmy występowanie błędów w testach, co doprowadziło do bardziej spójnych i niezawodnych wyników testów.

This strategic overhaul addressed the client’s initial challenges with a tailored technological approach and expert guidance. By equipping their team with state-of-the-art tools and in-depth knowledge, we’ve set a foundation for ongoing scalability and continuous operational improvements.

Czas trwania projektu
  • Sierpień 2023 r. - w toku

3x

szybsze wdrażanie wersji

50%

mniej błędów produkcyjnych

Skontaktuj się z nami!

Zadzwoń lub wypełnij poniższy formularz, a my skontaktujemy się z Tobą po przetworzeniu Twojego zgłoszenia.

    Prosimy o podanie szczegółów projektu, czasu trwania, stosu technologicznego, potrzebnych specjalistów IT i innych istotnych informacji.
    Nagraj wiadomość głosową na temat projekt, który pomoże nam lepiej go zrozumieć
    W razie potrzeby dołącz dodatkowe dokumenty
    Prześlij plik

    Można załączyć maksymalnie 1 plik o łącznej wielkości 2 MB. Ważne pliki: pdf, jpg, jpeg, png

    Informujemy, że po kliknięciu przycisku Wyślij Innowise będzie przetwarzać Twoje dane osobowe zgodnie z naszą Polityką prywatności w celu dostarczenia Ci odpowiednich informacji.

    Co będzie dalej?

    1

    Po otrzymaniu i przetworzeniu Twojego zgłoszenia skontaktujemy się z Tobą wkrótce, aby wyszczególnić potrzeby projektu i podpisać umowę o zachowaniu poufności, aby zapewnić poufność informacji.

    2

    Po przeanalizowaniu wymagań, nasi analitycy i programiści opracowują projekt z zakresem prac, wielkością zespołu, czasem i kosztami szacunki.

    3

    Umówimy się z Tobą na spotkanie, aby omówić ofertę i dojść do porozumienia porozumienia.

    4

    Podpisujemy umowę i rozpoczynamy pracę nad projektem tak szybko, jak to możliwe.

    Potrzebujesz innych usług?

    Спасибо!

    Cобщение отправлено.
    Мы обработаем ваш запрос и свяжемся с вами в кратчайшие сроки.

    Dziękuję!

    Wiadomość została wysłana.
    We’ll process your request and contact you back as soon as possible.

    Dziękuję!

    Wiadomość została wysłana. 

    Przetworzymy Twoją prośbę i skontaktujemy się z Tobą tak szybko, jak to możliwe.

    arrow