Bitte hinterlassen Sie Ihre Kontaktdaten, wir senden Ihnen dann unsere Übersicht per E-Mail zu
Ich stimme der Verarbeitung meiner persönlichen Daten zu, um personalisiertes Marketingmaterial in Übereinstimmung mit der der Datenschutzrichtlinie geschickt zu bekommen. Mit der Bestätigung der Anmeldung erklären Sie sich damit einverstanden, Marketingmaterial zu erhalten
Vielen Dank!

Das Formular wurde erfolgreich abgeschickt.
Weitere Informationen finden Sie in Ihrem Briefkasten.

In keiner Weise ist eine internationale Vollzyklus-Softwareentwicklung das Unternehmen wurde 2007 gegründet. Wir sind ein Team von über 1800+ IT-Experten, die Software für andere entwickeln profis weltweit.
Über uns
Innowise ist ein internationales Unternehmen für den vollen Zyklus der Softwareentwicklung, welches 2007 gegründet wurde. Unser Team besteht aus mehr als 1600+ IT-Experten, welche Software für mehrere Branchen und Domänen weltweit entwickeln.

Automatisierung von Webanwendungstests: 50% weniger Fehler in der Produktion

Innowise hat automatisierten Webanwendungstests integriert, um schnelle und fehlerfreie Softwareentwicklungszyklen zu gewährleisten.

Der Kunde

Industrie
Telekommunikation
Region
Belgien
Kunde seit
2023

Unser Kunde ist ein bekannter Anbieter von Kommunikationsdiensten, der sich auf Internet-Konnektivitätslösungen, den Verkauf von Modems, die Bereitstellung von SIM-Karten und die Einrichtung von Fernsehpaketen spezialisiert hat.

Detaillierte Information über den Kunden kann aufgrund der NDA nicht offengelegt werden.

Herausforderung

Verbesserung der Testverfahren zur Beschleunigung hochwertiger Software-Releases

Das interne Entwicklungsteam des Kunden hatte ursprünglich ein benutzerdefiniertes Framework für die Durchführung automatisierter Tests für seine Webanwendung eingerichtet. Dieses Framework entsprach jedoch nicht den erwarteten Standards, was zu fehlerhaften Tests führte. Die Instabilität wurde durch eine unzureichende Integration mit dem Continuous-Integration-System (CI) noch verstärkt. Dies führte zu verzögerten Rückkopplungsschleifen und verstärkten manuellen Eingriffen der QA-Teams.

Angesichts dieser Herausforderungen beauftragte uns der Kunde mit der Bereitstellung einer robusten Lösung, die seine Testprozesse rationalisieren, Regressionsfehler reduzieren und seine Release-Zyklen beschleunigen sollte.

Lösung

Verbesserung der QA-Fähigkeiten durch strategische Testautomatisierung

Bei der Bewältigung der Herausforderungen des Kunden konzentrierten wir uns auf die Ausarbeitung einer maßgeschneiderten Lösung zur Verbesserung der Qualitätssicherungsprozesse. Wir erkannten die Ineffizienzen und Grenzen ihres bestehenden benutzerdefinierten Test-Frameworks und machten uns daran, eine robustere, skalierbare und effiziente Teststrategie zu entwickeln, die speziell auf ihre Bedürfnisse zugeschnitten ist.

Rahmenanpassung und Integration

Basierend auf unserer Erfahrung in automatisierten Webanwendungstests haben wir eine Doppel-Framework-Strategie entwickelt, bei der wir sowohl Cypress als auch Playwright für End-to-End-Tests einsetzen. Wir haben diese Frameworks aufgrund ihrer einzigartigen Eigenschaften ausgewählt, die für ihre Stabilität, Robustheit und Kompatibilität mit verschiedenen Browsern und Umgebungen bekannt sind.

Integration von Cypress

Unsere AQS-Ingenieure haben Cypress wegen seiner außergewöhnlichen End-to-End-Testmöglichkeiten ausgewählt. Eines der herausragenden Merkmale von Cypress ist sein nativer Zugriff auf Browser-APIs ohne Umweg über zwischengeschaltete Server. Dies beschleunigt die Testausführung erheblich und reduziert die Komplexität von End-to-End-Tests. Wir haben Cypress so angepasst, dass es sich nahtlos in die Webanwendungen des Kunden integrieren lässt, was die Testausführung in Echtzeit und visuelle Testfunktionen ermöglicht. Mit dieser Einrichtung konnten wir die tatsächlichen Benutzerinteraktionen genauer simulieren. So wurde sichergestellt, dass alle Benutzerpfade gründlich getestet wurden, bevor der Code in die Produktion überführt wurde. Innowise implementierte den Start der Cypress-Tests innerhalb von GitLab und demonstrierte nach der Bereitstellung erfolgreiche Testabschlüsse auf einem Remote-Server. Dies ist eine weitere Bestätigung für die Robustheit und Zuverlässigkeit unseres Test-Frameworks in einer kontinuierlichen Integrationsumgebung.

Integration von Dramatikern

Auf der anderen Seite erwies sich Playwright als ideal für Front-End- und API-Tests, da es Tests in allen wichtigen Browsern mit minimaler Konfiguration ausführen kann. Es unterstützt das Testen im Headless-Modus, was für CI-Umgebungen von entscheidender Bedeutung ist, und bietet robuste Tools für den Umgang mit asynchronen Ereignissen und komplexen Seiteninteraktionen. Wir nutzten die Funktion zur parallelen Testausführung von Playwright, um mehrere Tests gleichzeitig in verschiedenen Umgebungen auszuführen, was die Gesamttestzeit drastisch reduzierte. Darüber hinaus konnten wir mit den zahlreichen APIs von Playwright benutzerdefinierte Testskripte erstellen, die komplexes Benutzerverhalten und Interaktionen nachahmen. Dadurch konnten wir die Testabdeckung und Zuverlässigkeit verbessern. Darüber hinaus haben wir mit Allure umfassende Berichte erstellt, um die Testergebnisse zu verfolgen und klare Einblicke und Analysen aus unseren Playwright-Integrationen zu erhalten.

Strategische Anpassung

Wir konfigurierten jedes Framework so, dass es mit der bestehenden Infrastruktur des Kunden übereinstimmte. Das Innowise-Team führte Plugins und Erweiterungen ein, die die Funktionalität der Frameworks verbesserten und die Integration mit anderen Tools im Tech-Stack des Kunden ermöglichten. So haben wir beispielsweise Cypress mit den Authentifizierungsdiensten des Kunden integriert, um eine sichere Anmeldung während der Tests zu ermöglichen. Außerdem haben wir Playwright so konfiguriert, dass es im Falle von Testfehlern automatisch Screenshots und Videos zur Überprüfung aufnimmt.

CI-Integration

Die AQA-Ingenieure integrierten Cypress und Playwright in die CI-Pipeline auf Gitlab. Diese Integration ermöglichte es uns, automatisierte Testausführungen einzurichten, die bei jeder Codeübergabe ausgelöst wurden. Durch die Automatisierung dieser Ausführungen stellten wir sicher, dass jeder neue oder geänderte Code gründlich getestet wurde, bevor wir im Entwicklungszyklus weiter vorankamen. Diese Vorgehensweise beschleunigte nicht nur den Testprozess, sondern half auch dabei, Fehler und Probleme in einem möglichst frühen Stadium zu erkennen. Dadurch konnte das Risiko, dass Fehler in die Produktion gelangen, verringert werden. Die nahtlose Verschmelzung dieser Frameworks mit Gitlab CI erleichterte auch einen reibungsloseren Arbeitsablauf, so dass sich die Entwickler mehr auf die Entwicklung von Funktionen und weniger auf sich wiederholende Testaufgaben konzentrieren konnten.

Berichterstattung über GitLab

Um die QA-Prozesse weiter zu stärken, nutzten wir die fortschrittlichen Reporting-Tools von Gitlab und konzentrierten uns dabei auf die Verbesserung der Transparenz und Verantwortlichkeit zwischen dem AQA-Team und den Führungskräften. Durch die Anpassung dieser Tools zur Erstellung detaillierter Berichte in Echtzeit stellten wir beiden Teams eine unschätzbare Ressource zur Verfügung, um auf aktuelle Daten zum Status verschiedener Tests zuzugreifen.

Diese Berichte wurden so konzipiert, dass sie umfassend und dennoch leicht zu interpretieren sind, einschließlich wichtiger Kennzahlen wie Testabdeckung, Fehlerraten und Ausführungszeiten. Dieser Detaillierungsgrad stellte sicher, dass die Manager die Effektivität der Testmaßnahmen schnell erfassen und Bereiche identifizieren konnten, die Aufmerksamkeit erforderten, ohne dass tiefes technisches Wissen erforderlich war. Für das AQS-Team waren diese Berichte ein wichtiges Instrument zur Verfolgung des Fortschritts, zum Aufspüren wiederkehrender Probleme und zur Überprüfung der Qualität der Codebasis.

Entwicklung der Architektur

Innowise entwickelte eine skalierbare Testarchitektur, die auf ein breites Spektrum von Tests zugeschnitten ist, darunter Smoke-Tests, Regressionstests und umfassende End-to-End-Tests. Diese Architektur wurde entwickelt, um die unmittelbaren Anforderungen des Projekts zu erfüllen und eine Grundlage für zukünftige Testinitiativen zu schaffen. Der modulare Charakter der Architektur ermöglichte eine einfache Anpassung und Skalierung. Wenn sich also die Anforderungen des Kunden weiterentwickelten, konnte auch das Test-Framework angepasst werden, ohne dass wesentliche Änderungen erforderlich waren.

Unser Ansatz umfasste die Einrichtung eines zentralisierten Testmanagementsystems, das die Organisation und Verfolgung von Testfällen, Ergebnissen und Metriken erleichterte. Dieses System war ausschlaggebend für die Verwaltung der Komplexität mehrerer Testtypen und die Bereitstellung eines kohärenten Arbeitsablaufs über alle Testzyklen hinweg. Durch die Implementierung robuster Datenprotokollierungs- und Ergebnisanalysefunktionen gaben wir dem QA-Team die notwendigen Werkzeuge an die Hand, um detaillierte Auswertungen zu jedem Testzyklus durchzuführen, was für die Aufrechterhaltung hoher Softwarequalitätsstandards von entscheidender Bedeutung ist.

Starten von Tests mit dem Xray Jira Tool

Um die QA-Prozesse weiter zu verbessern, haben wir Tests mit dem Xray Jira-Tool gestartet. Diese Integration ermöglichte es uns, Testfälle direkt in Jira zu verfolgen und zu verwalten und so die Kommunikation und Zusammenarbeit zwischen QA- und Entwicklungsteams zu optimieren. Durch die Nutzung der leistungsstarken Testmanagement-Funktionen von Xray behielten wir einen umfassenden Überblick über die Testaktivitäten. Das QA-Team verfolgte außerdem die Rückverfolgbarkeit von den Anforderungen zu den Fehlern und erstellte detaillierte Berichte über die Testabdeckung und -ausführung. Diese Integration verbesserte unsere Fähigkeit, Probleme sofort zu erkennen und zu beheben, und trug so zu einer qualitativ hochwertigen Softwarelieferung bei.

Ausbildung und Befähigung

Da der Wissenstransfer für den Erfolg jeder Technologieimplementierung von entscheidender Bedeutung ist, führten wir eingehende Schulungen durch, die aufgrund der zentralen Rolle von Cypress in der Teststrategie des Kunden speziell auf Cypress zugeschnitten waren. Diese Sitzungen waren so strukturiert, dass sie den internen Teams des Kunden das nötige Fachwissen vermittelten, um die Test-Frameworks effektiv und unabhängig zu nutzen, zu pflegen und zu erweitern.

Die Schulung umfasste eine Reihe grundlegender Themen, von der grundlegenden Einrichtung und Konfiguration der Testwerkzeuge bis hin zu fortgeschrittenen Funktionen wie Testautomatisierungsskripten und Umgebungsverwaltung. Außerdem wurden praktische Übungen durchgeführt, die auf reale Szenarien ausgerichtet waren, mit denen das Team konfrontiert werden könnte, um die Problemlösungskompetenz und die Sicherheit im Umgang mit den Tools zu verbessern.

Über die technische Schulung hinaus betonten wir die Bedeutung einer strategischen Denkweise für die Qualitätssicherungspraktiken. Wir leiteten das Team bei der Planung und Durchführung von Tests an, die sich an den allgemeinen Geschäftszielen orientieren. Dieser Ansatz stellte sicher, dass das Team nicht nur die Technologie beherrschte, sondern auch in der Lage war, die QS-Prozesse in seine täglichen Arbeitsabläufe zu integrieren.

Technologien

Backend

REST API, JSON, Java

Design

Figma, Sketch, Zeplin

Services

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

AQA

Unit-Testing + CI/CD-Integration über SonarQube, Cypress, Playwright

Prozess

Entdeckung und Planung

Das Projekt begann mit Erkundungstreffen, um die spezifischen Bedürfnisse und Herausforderungen des Kunden spezifischen Bedürfnisse und Herausforderungen zu verstehen. Diese Phase war entscheidend für die Einrichtung von Cypress und Playwright einzurichten, ihre Kompatibilität mit den bestehenden Systemen des Kunden sicherzustellen und den Grundstein für eine nahtlose Integration zu legen.

Entwicklung und Integration

Wir haben Cypress und Playwright an die speziellen Testanforderungen des Kunden angepasst und integrierten diese Frameworks in die CI-Pipeline von Gitlab. Diese Integration automatisierte den Testprozess, ermöglichte die frühzeitige Erkennung und Lösung von Problemen und beschleunigte den Entwicklungszyklus zu beschleunigen.

Schulung und Übergabe

Unser AQS-Spezialist führte umfassende Schulungen zu Cypress durch, um das Team des Kunden in die Lage zu versetzen, Test-Frameworks selbstständig zu verwalten und zu optimieren. Sie lieferten auch detaillierte Dokumentationen und Best Practices zur Unterstützung der laufenden Wartung und Verbesserung der Systeme zu unterstützen.

Kommunikation und Projektleitung

Während des gesamten Projekts unterhielten wir eine transparente Kommunikation über Slack und verwalteten Aufgaben und Fortschritte über Jira. Dieser Ansatz stellte sicher, dass alle Beteiligten einheitlich ausgerichtet waren und das Projekt gut koordiniert und auf Kurs war.

Team

1

Projektmanager

1

Teamleiter

1

Leitender QA-Ingenieur für Automatisierung

1

Testdaten-Analyst

4

Automatisierungs-QA-Ingenieure / SDET-Experten

Ergebnisse

Schnellerer Software-Release-Zyklus und 2x weniger Fehler in der Produktion

Nach der erfolgreichen Implementierung der automatisierten Test-Frameworks ist der Kunde zu einer robusten Testautomatisierungsumgebung übergegangen, die erhebliche betriebliche Verbesserungen ermöglicht.

  • Erhöhte Freisetzungseffizienz: Durch den Einsatz von Automatisierung konnte die Abhängigkeit von zeitaufwändigen manuellen Tests drastisch reduziert werden, was einen schnelleren Software-Release-Zyklus ermöglichte.
  • Fehlerreduzierung: Die verbesserten Testmöglichkeiten führten zu einem Rückgang der Regressionsfehler um 50%, was die Wirksamkeit der Testautomatisierungsprozesse belegt.
  • Verbesserte Stabilität der Testumgebung: Durch Feinabstimmung und Optimierung der Testaufbauten konnten wir das Auftreten von fehlerhaften Tests deutlich minimieren, was zu konsistenteren und zuverlässigeren Testergebnissen führte.

Bei dieser strategischen Überarbeitung wurden die anfänglichen Herausforderungen des Kunden mit einem maßgeschneiderten technologischen Ansatz und fachkundiger Anleitung angegangen. Indem wir das Team mit modernsten Tools und fundiertem Wissen ausstatteten, schufen wir die Grundlage für fortlaufende Skalierbarkeit und kontinuierliche operative Verbesserungen.

Projektdauer
  • August 2023 - Fortlaufend

3x

schnellere Bereitstellung von Releases

50%

weniger Fehler in der Produktion

Kontaktieren Sie uns!

Einen Anruf buchen oder füllen Sie das Formular unten aus und wir melden uns bei Ihnen, sobald wir Ihre Anfrage bearbeitet haben.

    Bitte fügen Sie Projektdetails, Dauer, Technologie-Stack, benötigte IT-Experten und andere Infos bei.
    Bitte fügen Sie Projektdetails, Dauer, Technologie-Stack, benötigte IT-Experten
    und andere Infos bei.
    Hängen Sie nach Bedarf zusätzliche Dokumente an.
    Datei hochladen

    Sie können bis zu 1 Datei von insgesamt 2 MB anhängen. Gültige Dateien: pdf, jpg, jpeg, png

    Bitte beachten Sie, dass Innowise mit dem Anklicken der Schaltfläche 'Senden' Ihre persönlichen Daten nach der Datenschutzrichtlinie verarbeiten wird, um Ihnen die gewünschten Informationen zukommen zu lassen.

    Wie geht es weiter?

    1

    Sobald wir Ihre Anfrage erhalten und bearbeitet haben, werden wir uns mit Ihnen in Verbindung setzen, um Ihre Projektanforderungen zu besprechen und eine NDA (Vertraulichkeitserklärung) für die Vertraulichkeit der Informationen zu unterzeichnen.

    2

    Nach der Prüfung der Anforderungen erstellen unsere Analysten und Entwickler einen Projektvorschlag, der Arbeitsumfang, Teamgröße, Zeit- und Kostenschätzung enthält.

    3

    Wir vereinbaren einen Termin mit Ihnen, um das Angebot zu besprechen und eine Vereinbarung mit Ihnen zu treffen.

    4

    Wir unterzeichnen einen Vertrag und beginnen umgehend mit der Arbeit an Ihrem Projekt.

    Спасибо!

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

    Vielen Dank!

    Ihre Nachricht wurde gesendet.
    Wir werden Ihre Anfrage bearbeiten und Sie so schnell wie möglich kontaktieren.

    Vielen Dank!

    Ihre Nachricht wurde gesendet. 

    Wir werden Ihre Anfrage bearbeiten und uns so schnell wie möglich mit Ihnen in Verbindung setzen.

    Pfeil