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.

Zautomatyzowane testowanie oprogramowania: 2-krotny wzrost szybkości wydawania funkcji

Firma Innowise przeprowadziła automatyczne testowanie oprogramowania, aby zapewnić, że integracja nowych funkcji systemowych nie wpłynie na integralność istniejących funkcji.

Klient

Branża
Technologia informacyjna
Region
Szwajcaria
Klient od
2023

Nasz klient jest dostawcą rozwiązań ERP w chmurze zaprojektowanych w celu zwiększenia wydajności operacyjnej i odporności na zakłócenia operacyjne.

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

Wyzwanie

Weryfikacja stabilności systemu ERP po integracji nowych funkcji

Nasz klient wprowadził nowe funkcje do swojego systemu ERP i zintegrował je z istniejącą wersją. Zwrócił się do Innowise z prośbą o ocenę stabilności wdrożonego oprogramowania. Oferowaliśmy usługi automatycznego testowania oprogramowania, mające na celu zidentyfikowanie potencjalnych przeszkód w systemie i ich naprawienie.

Wdrożenie

Korzystanie z usług zautomatyzowanego testowania oprogramowania w celu identyfikacji i rozwiązywania potencjalnych problemów.

Innowise elevated the client’s ERP system with a multi-faceted approach to automated software testing. It incorporated smoke, functional, and regression testing, all executed within a continuous integration/continuous delivery (CI/CD) pipeline. Smoke testing was employed to quickly verify the stability of key functionalities, while functional testing was vital in examining each feature for correctness. Regression testing was crucial in ensuring that new updates did not adversely affect existing functionalities. The integration of these testing methods into the CI/CD pipeline streamlined the development process. This approach enabled rapid identification and resolution of issues, and ensured a consistent rollout of robust, high-quality features in the ERP system.

Ocena przypadków testowych pod kątem automatyzacji

Na początku naszym zadaniem było przeczesanie przypadków testowych stworzonych przez testerów manualnych. Korzystając z naszego rozległego doświadczenia w testowaniu oprogramowania, zagłębiliśmy się w każdy przypadek, ręcznie wykonując kroki każdego przypadku testowego, aby ocenić jego złożoność i możliwość automatyzacji. Naszym celem było określenie najbardziej efektywnego sposobu automatyzacji powtarzalnych i czasochłonnych zadań bez wpływu na dokładność wyników testów.

Wdrażanie testów dymu

Our testers set up a collection of pre-recorded smoke test cases that sprang into action against each new build. These tests were essential for confirming that the software’s major functionalities were running, assuring consistency and thoroughness. If an automated test flagged an issue, it immediately alerted our team, allowing for swift identification and action on the problem.

Our process’s flexibility empowered our team to swiftly address any issues uncovered in the build. We promptly implemented the required adjustments and redeployed the build without delay, ensuring minimal disruption.

Integracja testów funkcjonalnych w każdym sprincie

We seamlessly transitioned from the broad-scope verification of smoke tests to the targeted and meticulous functional testing approach. This ensured that every new update was effective in isolation and blended seamlessly with the established software components. We performed functional tests every sprint so that each incremental development was rigorously evaluated, upholding the software’s overall quality and cohesiveness.

Testowanie regresji oprogramowania

Zastosowaliśmy usprawniony, ale dokładny proces wdrażania zautomatyzowanych testów regresji. Nasz zespół skonfigurował środowisko testowe, które odzwierciedlało rzeczywiste warunki produkcyjne, zapewniając, że nasze wyniki były tak dokładne, jak to tylko możliwe. Dzięki Selenium zautomatyzowaliśmy skrypty testów regresji, znacznie zwiększając wydajność, co jest kluczowym czynnikiem w przypadku złożonych systemów.

Po zautomatyzowaniu uruchomiliśmy te skrypty w odniesieniu do najnowszej kompilacji, aby sprawdzić niespójności lub awarie. Po uruchomieniu testów dokładnie przeanalizowaliśmy wyniki, wskazując wszelkie pojawiające się błędy lub problemy.

If we detected any problems, we promptly addressed them by tweaking the code and re-running the tests to confirm the effectiveness of our fixes. This cycle of testing, analyzing, and refining was a constant with each new software update, ensuring the software’s stability and intended functionality. This efficient approach to regression testing was key in maintaining the software’s reliability and performance, thereby reducing the risk of bugs and providing a smooth user experience.

Potok ciągłej integracji/ciągłego dostarczania (CI/CD)

In addition to our rigorous testing process, we’ve also integrated our tests into the continuous integration/continuous delivery (CI/CD) pipeline, enhancing our development cycle efficiency and responsiveness. We utilized the Allure tool for detailed reporting, which provided clear insights into the test results. This integration allowed us to set up an automated system where tests were launched each night. This nightly testing routine ensured that any new changes were immediately evaluated, allowing for swift identification and resolution of issues. Incorporating Allure reports into our CI/CD pipeline meant that our team had access to comprehensive test data every morning, streamlining decision-making and maintaining a constant focus on quality and stability. This integration accelerated our testing process and reinforced the reliability of each software build we delivered.

Szczegółowe kroki w naszym potoku CI/CD:

  • Kod: Programiści pisali i udoskonalali kod, upewniając się, że spełnia on nasze standardy dotyczące funkcjonalności i wyglądu.
  • Zobowiązanie: Następnie zatwierdziliśmy zaktualizowany kod w naszym systemie kontroli wersji, oznaczając pierwszy punkt kontrolny w potoku.
  • Budować: Ten zatwierdzony kod przeszedł proces kompilacji, w którym został przekonwertowany do postaci nadającej się do uruchomienia, gotowej do testowania.
  • Testy jednostkowe: Poddaliśmy kompilację testom jednostkowym, w których poszczególne komponenty zostały przetestowane pod kątem poprawności. Zostało to przeprowadzone w celu zagwarantowania, że każdy komponent działa bezbłędnie.
  • Testy dymu: Po testach jednostkowych przeprowadziliśmy testy dymne kompilacji, aby szybko sprawdzić, czy krytyczne funkcje działają zgodnie z oczekiwaniami.
  • Zobowiązanie: Po przeprowadzeniu testów dymnych ponownie zatwierdziliśmy kod w systemie kontroli wersji, wprowadzając wszelkie zmiany wprowadzone po testach.
  • Recenzja: Dokładnie sprawdziliśmy każdy commit, upewniając się, że zmiany są zgodne z naszymi standardami jakości i celami projektu.
  • Inscenizacja: Kompilacja została przeniesiona do środowiska przejściowego, które ściśle odzwierciedlało konfigurację produkcyjną, w celu dalszych testów.
  • Testy systemu: W fazie testowej przeprowadziliśmy kompleksowe testy systemu, aby zweryfikować kompilację w środowisku symulującym rzeczywiste użycie.
  • Produkcja: Gdy kompilacja pomyślnie przeszła wszystkie etapy testów, została wdrożona w środowisku produkcyjnym, udostępniając ją użytkownikom końcowym.

Technologie

AQA

Python, Pytest, Selenium, Allure

Back-end

Java, Spring, Hibernate

VSC

Git, Gitlab

Cloud

AWS Grafana IAM, SNS, SQS, KMS, RDS(PostgreSQL), S3, SES

DevOps

Gitlab, Docker, Docker Compose

Proces

Metodologia Agile i struktura sprintu

W naszym projekcie ściśle przestrzegaliśmy metodologii Agile, dzieląc proces rozwoju na dwutygodniowe sprinty. Takie podejście pozwoliło nam podzielić projekt na łatwe do zarządzania części, zapewniając spójność i wydajność na każdym etapie.

Zarządzanie zadaniami i współpraca zespołowa

Na początku każdego sprintu określaliśmy jasne cele i zadania, które były śledzone za pomocą Jira. Narzędzie to utrzymywało nasz zespół na bieżąco. Używaliśmy go nie tylko do śledzenia zadań, ale także jako centralnego centrum współpracy i komunikacji, dzięki czemu każdy członek zespołu był zawsze na bieżąco z najnowszymi osiągnięciami i priorytetami.

Przegląd sprintu i szczegółowe raportowanie

Gdy zbliżaliśmy się do końca każdego sprintu, skupialiśmy się na konsolidacji naszej pracy i przygotowaniach do przeglądu sprintu. Starannie opracowywaliśmy szczegółowe raporty, które podkreślały zakres i wyniki naszych testów. Raporty te były czymś więcej niż tylko podsumowaniem wykonanych zadań, zawierały one dogłębną analizę tego, co osiągnęliśmy, jakie wyzwania napotkaliśmy i jak sobie z nimi poradziliśmy. Zawierały one również informacje zwrotne z naszych procesów testowania oraz wszelkie wnioski, które można było przenieść na następny sprint.

Zespół

3

Inżynierowie AQA

1

Inżynier DevOps

Wyniki

Przyspieszone wdrażanie funkcji i zmniejszenie liczby błędów produkcyjnych o 50%

Implementing automated testing for our client’s ERP system resulted in notable enhancements and efficiencies:

  • Szybsze wydawanie nowych funkcji: dzięki zautomatyzowanym testom nowe funkcje zostały wydane dwa razy szybciej w porównaniu z poprzednim procesem ręcznym.
  • Reduction in bugs: The integration of CI/CD led to a 50% reduction in bugs reaching production, significantly enhancing the software’s reliability.

Biorąc pod uwagę ten pozytywny wynik, nasz klient wyraził entuzjazm dla naszej współpracy. Dostrzegają wartość, jaką nasza wiedza i wdrażanie najnowocześniejszych technologii wnoszą do ich działalności. W przyszłości będziemy ściśle współpracować z naszym klientem, aby wykorzystać osiągnięte sukcesy i zbadać dalsze możliwości ulepszenia jego systemów i procesów.

Czas trwania projektu
  • Wrzesień 2023 r. - w trakcie realizacji

2x

wzrost szybkości uwalniania funkcjonalności

50%

mniej błędów trafiających do produkcji

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