Blog

Mit kontinuierlichem Testing DevOps deutlich beschleunigen

Mit kontinuierlichem Testing DevOps deutlich beschleunigen

Um Software-Releases schneller bereitzustellen und mit DevOps Schritt zu halten, ist kontinuierliches Testen in den Vordergrund gerückt, da es die Softwareentwicklung und automatisierte Testverfahren optimiert. Durch eine Linksverschiebung können Sie automatisierte Tests in jede Phase des Entwicklungszyklus integrieren, Fehler früher im Prozess finden und gleichzeitig die Qualität der einzelnen Software-Release-Kandidaten verbessern.

Am 1. März startete Keysight das Bootcamp Optimize DevOps with Continuous Testing, um die neuesten Trends in der Softwareentwicklung und beim automatisierten Testen zu diskutieren. Das Bootcamp stellte die Kombination von DevOps und Best Practices für kontinuierliches Testen vor, die in CI/CD-Pipelines integriert sind, um die Bereitstellung zu rationalisieren und die Qualität über Release-Zyklen hinweg zu verbessern.

Sie können weiterhin lernen und von den wertvollen Erkenntnissen unserer Branchenexperten zu DevOps und Testautomatisierung profitieren, indem Sie hier auf die On-Demand-Inhalte des Bootcamps zugreifen. Lesen Sie weiter, um mehr über die wichtigsten Fragen und Erkenntnisse aus dem Bootcamp zu erfahren.

Was kommt als Nächstes auf DevOps zu?  Wie kann die Testbarkeit helfen, den Lebenszyklus der Softwareentwicklung zu optimieren?

Die Hauptrednerin des Bootcamps war Emily Freeman, die Autorin von DevOps for Dummies und Leiterin der Abteilung Community Engagement bei AWS. Sie sprach über ihr Revolution-Modell, mit dem die wachsende Komplexität und die Herausforderungen für Entwicklungsteams besser bewältigt werden können und das einen neuen Ansatz zur Modernisierung des Softwareentwicklungszyklus darstellt.

Das Revolution-Modell besteht aus konzentrischen Kreisen für die kritischen Rollen der Softwareentwicklung, einschließlich Architektur, Entwicklung, Automatisierung, Bereitstellung und Betrieb. Diese Kreise werden von 6 Speichen gekreuzt: Testbarkeit, Sicherheit, Zuverlässigkeit, Beobachtbarkeit, Flexibilität und Skalierbarkeit, die die Produktionsüberlegungen darstellen, die Ingenieure während ihrer Arbeit berücksichtigen müssen.

revolution-model-for-critical-software-development

Die erste dieser wichtigen Überlegungen ist die Testbarkeit, die als das grundlegende Testen aller Softwaresysteme beschrieben wird, das erforderlich ist, um sicherzustellen, dass Softwaredesigns, Code und Infrastruktur wie geplant funktionieren. Dieses Konzept unterstreicht die Bedeutung einer kontinuierlichen Teststrategie, die es Ihnen ermöglicht, Tests für Softwareänderungen zu automatisieren und zu integrieren, sobald diese in Ihre CI/CD-Pipeline integriert werden. Dies ermöglicht eine frühzeitige Validierung der Funktionalität innerhalb des Softwareentwicklungszyklus, minimiert die Risiken und ermöglicht eine beschleunigte Bereitstellung und Implementierung neuer Funktionen.

Wie kann man DevOps für die moderne Anwendungsentwicklung optimieren? 

Die Optimierung von DevOps erfordert Best Practices, von denen Sie wissen, dass sie funktionieren werden. Deepty Chauhan, GM des Keysight Software Design Centers in Atlanta, stellte anhand von Erfahrungen aus der Praxis DevOps-Best-Practices vor, die auf CI/CD-Pipelines anzuwenden sind, um Ihren Erfolg zu sichern. Das perfekte Rezept kombiniert Agile + DevOps + Automatisierung, um die Anwendungsentwicklungsumgebung zu transformieren und qualitativ hochwertige Software in kürzester Zeit zu liefern.

Zu den wichtigsten Grundsätzen der kontinuierlichen Bereitstellung gehörten die Schaffung eines wiederholbaren Prozesses für die Freigabe von Software, die Automatisierung fast aller Prozesse und die Verwendung kontinuierlicher automatisierter Tests, um die Qualität während des gesamten Entwicklungsprozesses zu verbessern. Wie arbeiten Continuous Delivery und DevOps zusammen? Continuous Delivery ist ein Modell für die Softwarebereitstellung von der Codeübergabe bis zur Produktion, während es bei DevOps darum geht, wie man das alles zum Laufen bringt.

Einige großartige Ergebnisse aus einer echten DevOps-Fallstudie von Keysight, darunter 9-mal schnellere Releases, 8-mal bessere Qualität und 40 % kürzere Testzyklen. Um mehr Details über diese DevOps-Best-Practices zu erfahren, sollten Sie sich Deeptys Session in den Bootcamp-On-Demand-Inhalten ansehen.

Können kontinuierliche Tests mit komplexen und schnelleren Release-Zyklen mithalten?

Bei der agilen Entwicklung ist kontinuierliches Testen entscheidend, um mit den schnellen DevOps-Releases Schritt zu halten. Durch die Anwendung von Best Practices für kontinuierliches Testen können sich Anwendungsentwicklungs- und QA-Teams besser abstimmen, um automatisierte Teststrategien in ihren CI/CD-Pipelines zu übernehmen und Anwendungen schneller und in besserer Qualität bereitzustellen.

Ethan Chung, Solution Architect Manager bei Keysight, erläuterte, wie Sie Ihre automatisierten Tests mit der Keysight Eggplant Testautomatisierungssoftware skalieren können, um Ihre Testabdeckung für komplexe Anwendungen zu erweitern. Mit Eggplant können Sie einen auf KI-Modellen basierenden Ansatz für automatisierte Tests nutzen, um anspruchsvolle Testfälle zu erstellen, die sich in jede DevOps-Pipeline integrieren lassen und Ihren Erfolg bei automatisierten Tests beschleunigen.

Wie implementieren Sie kontinuierliche Tests in Ihrer Umgebung?

Um das Testen zu einem integralen Bestandteil jeder Entwicklungsphase zu machen, muss das kontinuierliche Testen in Ihre CI/CD-Pipeline integriert werden, damit Tests durchgeführt werden können, sobald neue Funktionen implementiert werden.

Philippa Merrill, Senior Technical Consultant bei Keysight, zeigte in einer technischen Breakout-Session, wie Sie die Testautomatisierung von Eggplant in Ihre Build- und Release-Pipelines unter Verwendung von Continuous-Integration-Tools wie Jenkin, Azure Pipelines usw. integrieren und Testskripte nahtlos in ein Jira-Automatisierungstool integrieren können. Diese integrierte Testautomatisierungsstrategie stellt sicher, dass während des gesamten Entwicklungsprozesses bis hin zur Bereitstellung ständig hochwertige Software-Release-Kandidaten bewertet werden.

Welche Bedeutung und welchen Nutzen hat das Full-Stack-Testing?

Das Testen moderner Anwendungen bringt neue Herausforderungen mit sich, da die Ergebnisse von der Benutzeroberfläche bis hin zur Backend-Datenbank überprüft werden müssen, um die Datenintegrität über den gesamten Technologiebereich hinweg sicherzustellen. Das Testen all dieser Technologieebenen erfordert in der Regel den Einsatz mehrerer Testwerkzeuge und -ansätze.

In einer weiteren technischen Sitzung des Bootcamps demonstrierte Kieran Leicaster, Technical Consultant bei Keysight, wie Sie Ihre Teststrategien mithilfe der Fusion Engine von Eggplant anpassen können, um reale Benutzerszenarien zu testen und einen kompletten Anwendungsworkflow über das Frontend (UI) bis hin zu den Backend-Integrationen (API, Datenbank) zu validieren. Die Demonstration verdeutlichte, wie Eggplant End-to-End-Nutzererfahrungstests mit einem einzigen integrierten Testtool ermöglicht, um Testskripte zu erstellen und zu konsolidieren, die den gesamten Technologiebereich abdecken.

Transformieren Sie mit Continuous Testing, um schneller hochwertige Software zu liefern

Die Kombination von DevOps mit kontinuierlichen Tests schafft den richtigen Rahmen für die Softwareentwicklung, um den Einsatz von Automatisierung bei der Erstellung, Prüfung und Bereitstellung moderner Anwendungen zu ermöglichen. Dies trägt zur Förderung der Qualität im gesamten Entwicklungsprozess bei und ermöglicht es Ihnen, mit den schnellen DevOps-Release-Zyklen Schritt zu halten und gleichzeitig eine hohe Gesamtqualität zu gewährleisten.

Wenn Sie mehr darüber erfahren möchten, wie Sie DevOps durch kontinuierliches Testen optimieren können, lesen Sie die Inhalte des Bootcamps für kontinuierliches Testen oder laden Sie unsere Lösungsübersicht für kontinuierliches Testen herunter.

Teilen

Related Posts

Antwort hinterlassen Antwort abbrechen

Ihre E-Mail Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert. *