Wichtige Trends beim Testen von Software von SmartBear: Testtypen und Trends

Im Jahr 2019 führte SmartBear zum dritten Mal eine jährliche Umfrage unter der Community der Software-Tester durch . Alyona Batitskaya, Front-End-Entwicklerin, Lehrerin und Kursleiterin an der Programmierfakultät für Netologie, übersetzte die Forschungsergebnisse und sammelte wichtige Ergebnisse zu Entwicklungsmethoden, Testwerkzeugen und -technologien, Automatisierung und Entwicklungstrends der Branche in den nächsten zwei Jahren.  

Wer wurde interviewt?


Das Unternehmen befragte 2.526 Personen aus verschiedenen Ländern und Branchen, unter denen sich QS-Ingenieure und Automatisierungsingenieure durchsetzen - 37%. Weitere Befragte waren Entwickler (15%), QS-Manager (14%), Architekten (8%), Händetester (7%), Manager für Produkt- / Geschäftsanalysen (5%), Berater (4%) und DevOps Ingenieure (4%).


Die Berufe der Befragten sind durchweg unterschiedlich.

Es gibt viele Arten von Softwaretests, und meistens werden mehrere Ansätze angewendet. Die durchschnittliche Anzahl der Testarten in den befragten Teams beträgt 2,2. Dies zeigt, dass die Testabteilungen nicht hyperspezialisiert sind, das heißt, sie verwenden nicht viele Testansätze, aber sie hören nicht bei derselben Form auf.  


Die meisten Befragten testen Software oder geben die entsprechenden Teams ein
 
In Bezug auf Tester, die unabhängig arbeiten, gibt es mehr QS-Manager, die Aufgaben festlegen und steuern. Die Forscher erklären dies durch die kontinuierliche Verbesserung der Qualifikationen der Befragten und den Übergang zu den nächsten Schritten auf der Karriereleiter.  
  
Seit 2017 hat sich die Größe der Unternehmen, in denen die Befragten arbeiten, geändert. Früher wollten alle in ein großes Unternehmen (über 10.000 Mitarbeiter) einsteigen, jetzt bevorzugen sie kleinere Unternehmen (weniger als 500 Mitarbeiter).  

Was wurde getestet




Die meisten getesteten Webanwendungen (79%) und APIs / Webdienste (77%). 

Seit 2017 hat die Anzahl der Test-APIs / Webdienste und mobilen Webanwendungen um etwa 10% zugenommen. Gleichzeitig gibt es einen Abwärtstrend beim Testen von Desktop-Anwendungen, hybriden und progressiven Webanwendungen sowie Box-Lösungen. 

Testzeit


Die Testzeit hat sich seit 2018 nicht wesentlich verändert - im Durchschnitt sind dies 61% der Arbeitszeit.

Die zeitaufwändigste Aufgabe 23% der Befragten erwägen, Tests durchzuführen. Erstellung automatisierter Tests an zweiter Stelle (18%), gefolgt vom Schreiben von Skripten für manuelle Tests (17%). Die Berichterstattung / Analyse der Testergebnisse blieb auf dem gleichen Niveau - der vierte Platz mit 12% der Befragten, aber dies ist deutlich höher als 3%, die angaben, dass dies die zeitaufwändigste Aufgabe im Jahr 2017 war. 
 
Mitarbeiter großer Unternehmen sind mit dem integrierten Softwaretestprozess zufriedener. Der Grund kann sein, dass große Unternehmen im Gegensatz zu kleinen über die Ressourcen, die Historie und das Wissen verfügen, um bessere Tests durchführen zu können. 
 
Die folgende Korrelation wurde festgestellt: Befragte, die weniger als 20% ihrer Zeit mit Tests verbrachten, waren mit dem Testprozess weniger zufrieden, im Gegensatz zu Befragten, die zwischen 20 und 80% testeten. Dies kann entweder ein größeres Bewusstsein für die Prozesse und ihre Bequemlichkeit oder ein geringeres Interesse und eine geringere Zufriedenheit bei denjenigen widerspiegeln, die weniger häufig testen. 
 

Testzyklen


Unternehmen wechseln weiterhin zu schnelleren Software-Testzyklen.

Die beliebteste Kombination von Entwicklungsmethoden ist Agile und DevOps. Dies deutet darauf hin, dass Unternehmen, die Agile bereits verwenden, diese Prozesse weiter verbessern und mit der Implementierung von DevOps-Prozessen beginnen. 

Nur ein Ansatz DevOps verwendet sowohl kleine als auch große Unternehmen. Die Verwendung beider Ansätze - Agile und DevOps - wird in großen Unternehmen häufiger beobachtet. 
 

Agile und DevOps-Methoden wachsen nicht schnell und nehmen dem Wasserfall langsam Marktanteile ab. Die meisten Befragten gaben an, beim Wechsel zu DevOps eine Kombination von Ansätzen zu verwenden.
 

Testwerkzeuge und -technologien


Unter den Tools führt Jenkins das dritte Jahr in Folge an (52%). Gleichzeitig nimmt die Zahl derer, die bei ihrer Arbeit keine CI / CD-Tools verwenden, von Jahr zu Jahr ab - 2019 waren es nur 14%. 


Trotz der starken Führung von Jenkins sieht der Markt für Testwerkzeuge fragmentiert aus.
 
Die häufigsten Sprachen zum Schreiben von Anwendungen sind Java (49%) und JavaScript (44%). Die Häufigkeit der Verwendung von C # (24%) und VB.net (11%) nimmt ab, die Häufigkeit der Verwendung von Python nimmt jedoch zu (18%). Die Popularität von Swift, R und Go wächst weiter, aber alle reagieren ungefähr gleich gut. 

Die durchschnittliche Anzahl der Programmiersprachen zum Schreiben von Anwendungen ist gestiegen: von 2,36 auf 2,54. 

Eine ähnliche Verteilung unter den Sprachen wurde beim Schreiben automatischer Tests beibehalten. Es sei denn, Python hat Orte mit C # getauscht. 
 

Testmanagement 


Es zeigte sich ein klares Muster: Je kleiner das Unternehmen, desto eher verwenden sie keine Programme zur Verwaltung des Testprozesses.  


Kleine Unternehmen verwenden seltener Testmanagement-Tools. 

Unter denjenigen, die diese Software noch verwenden, gibt es kein einziges führendes Programm:  



Belastbarkeitstest 


Von 30% auf 35% stieg die Anzahl der Befragten, die vor jeder Veröffentlichung des Projekts Lasttests durchführen.  


Die Beliebtheit von Lasttests für verschiedene Softwaretypen
 
Unter den Lasttest-Tools bricht der Open-Source-Apache JMeter mit einer zuversichtlichen Marge aus - 37% der Tester entscheiden sich dafür. Der Open-Source-Trend wächst in der IT-Community, daher ist ein solcher Marktführer nicht überraschend. 

Zweiter Platz - bei LoadRunner (18%). Nicht bezeichnete „andere“ Werkzeuge werden von 17% verwendet. 
 

 

Testautomatisierung 


Der Grad der Softwareabdeckung durch automatische Tests hat sich seit 2017 praktisch nicht geändert:
 

Nur 18% der Anwendungen werden von Autotests zu mehr als 75% abgedeckt. Auch hier
 
gibt es ein Muster mit der Größe der Unternehmen. 
Je größer das Unternehmen ist, desto größer ist der Grad der Anwendungsabdeckung mit Autotests. 
 Das größte Problem besteht darin, die Relevanz von Tests beizubehalten, wenn sich die Anwendung ändert und wächst - 21% der Antworten. Der Zeitmangel beim Testen wird um 15% verzeichnet. Unzureichende Qualifikationen der Mitarbeiter werden von 12% festgestellt.

UI-Tests 


Schwierigkeiten und Hauptherausforderungen




In der Liste der Hauptschwierigkeiten beim Testen führt die Benutzeroberfläche Stabilitätsprüfungen durch (18%).

Eine neue Antwort "Beginnen Sie damit" [Sie haben die Benutzeroberfläche noch nicht getestet und können nun fortfahren. - ca. Ed.] Belegte sofort mit 17% den zweiten Platz.  
 
Verteilung anderer Antworten:
 
  • Bestimmung des Testobjekts und der Prozesskontrolle (15%).
  • Testen in verschiedenen Umgebungen (Geräte, Betriebssysteme) (13%).
  • Testabdeckungstest (11%).
  • Testdienst (11%).
  • Erstellung synthetischer Daten (9%).

 

Werkzeuge


Unter den Werkzeugen zum automatisierten Testen der Benutzeroberfläche gibt es viele Anwendungen mit geringer Beliebtheit. 

Selenium Webdriver ist das zweite Jahr in Folge führend (27%). An zweiter Stelle steht TestNG (10%). TestComplete schließt die ersten drei (8%).



 

Tests gleichzeitig ausführen


Das gleichzeitige Ausführen mehrerer Testtypen spart Zeit beim Testen, was unter den Bedingungen eines kurzen Entwicklungszyklus von entscheidender Bedeutung ist.  
Gleichzeitig verwenden nicht wenige Tester diesen Chip: Nur 30% der Befragten führen mehr als 10 Tests gleichzeitig durch.



Die Anzahl der gleichzeitig gestarteten Tests

Eine weitere Regelmäßigkeit: Fast jeder, der keine Tests parallel ausführt, automatisiert die Tests nicht. 

Fast jeder, der Skripte oder andere Methoden zum Testen von Benutzeroberflächen verwendet, verwendet parallele Tests, im Gegensatz zu denen, die "Aufzeichnen und Wiederholen" als Hauptmethode zum Testen von Benutzeroberflächen ausgewählt haben. 

Die Wahl des Ansatzes zur Automatisierung im Vergleich zu parallelen Tests
 

Ausführen von Tests in der Cloud 


Die Anzahl derer, die Tests in der Cloud durchführen, wächst langsam, aber stetig. Im Jahr 2017 gab es 45% dieser Antworten und im Jahr 2019 bereits 50%.  

Beliebte Browser


Die drei Führer haben sich seit 2017 nicht verändert. Der beliebteste Browser zum Testen von Webanwendungen ist Chrome (53%). Als nächstes folgen Firefox (41%) und Internet Explorer (35%). 

Chrome, FireFox und Internet Explorer gingen 2018 stark zurück, aber die ersten beiden wuchsen 2019 um etwa 5%, aber Internet Explorer fällt weiter.  

38% der Befragten testen in drei oder mehr Browsern. Die überwiegende Mehrheit (51%) wird nur in der neuesten Version von Browsern getestet, 20% - in den letzten beiden, 11% - in den letzten drei.  

Headless Browser 


Die Technologie von Headless-Browsern erhöht die Anzahl der parallel ausgeführten Tests erheblich und beschleunigt so den gesamten Testprozess um fast das Dreifache. Bisher haben nur Chrome und FireFox kopflose Versionen. 
 
Laut der Umfrage nutzen 25% der Befragten diese Technologie. Die restlichen 75% sind sich der Verwendung von Headless-Browsern im Unternehmen nicht bewusst oder sind sich sicher, dass diese Technologie nicht implementiert ist.  

Mobiles Testen


Jedes Jahr wächst der Bedarf an Unternehmen, das Produkt auf Mobilgeräten zu testen: Nur 15% der Befragten gaben an, dass sie Mobilgeräte überhaupt nicht testen. 
 
Der Marktführer sind wie im letzten Jahr iOS-Geräte. Android ist auf den Fersen. 
 


— , , . 

 



Im Jahr 2018 wurden 45% der Tests automatisiert, im Jahr 2019 - 46%. Obwohl nicht wesentlich, aber stabiles Wachstum. 

Nach den Plänen der Befragten wollen sie bis 2021 69% der Tests automatisieren. QS-Ingenieure haben die höchsten Erwartungen.  

Laut der Umfrage planen diejenigen mit einer aktuellen Automatisierungsrate von 1–25%, diese auf 26–50% zu erhöhen. Und diejenigen mit 26–50% wollen 51–75% bekommen. Das heißt, niemand beansprucht absolute Automatisierung und bewertet wirklich ihre Fähigkeiten.  

Die effektivste Option ist eine wöchentliche Veröffentlichung des Produkts, etwa 37% der Befragten haben es gewählt. An zweiter Stelle steht der monatliche Entwicklungszyklus (28%). Den dritten Platz belegt die vierteljährliche Veröffentlichung des Produkts (12%). 


Die Befragten haben die meisten Ziele erreicht, die sie sich 2017 gesetzt haben

In der obigen Grafik können Sie die Erwartungen der Befragten aus dem letzten Jahr hinsichtlich der Häufigkeit von Veröffentlichungen und der Realität vergleichen. Die Ziele für die wöchentliche und monatliche Veröffentlichung wurden nicht nur erreicht, sondern sogar übertroffen. Aber jeden Tag oder mehrmals am Tag zu veröffentlichen, funktionierte für viele nicht - die Erwartungen wurden überbewertet. 

Trends am Horizont seit zwei Jahren


Die Befragten versuchten, die Richtungen vorherzusagen, die in den nächsten zwei Jahren im Bereich der Tests an Popularität gewinnen werden. Aus den Antworten, die mehr als 10 Mal erwähnt wurden, haben wir eine Wolke vereinfachter Tags gesammelt.  


Prognosen zufolge werden die beliebtesten Bereiche Automatisierung, künstliche Intelligenz und maschinelles Lernen sein. 

die Hauptsache 


Die Veröffentlichungshäufigkeit nimmt weiter zu, da immer mehr Unternehmen von der Waterfall-Methode zu einer Kombination aus Agile- und DevOps-Methoden übergehen.

Das Testen wird von Webanwendungen und APIs dominiert.  

Es werden viele verschiedene Testwerkzeuge verwendet, unter denen manuelle Tests führend sind. 

Die schwierigste Aufgabe beim automatisierten Testen ist das Synchronisieren von Testskripten mit der aktuellen Version der Anwendung. 

Scripting ist der häufigste Ansatz zur Testautomatisierung, und Selen ist das beliebteste Scripting-Tool. 

Nach den Plänen der Befragten wollen sie bis 2021 69% der Tests automatisieren. 

Die Befragten sehen immer noch die Notwendigkeit, in verschiedenen Browsern und Browserversionen zu testen, aber die Anzahl der Browserversionen ist unbedeutend, aber verringert. 

Ein Viertel der Tester verwendet kopflose Browser, während etwas mehr als ein Viertel nicht sicher ist, ob ihre Organisationen diese Technologie verwenden. 

In den nächsten zwei Jahren werden Automatisierung, künstliche Intelligenz und maschinelles Lernen die beliebtesten Bereiche in der Testbranche sein.

Von den Herausgebern von Netology


Wir laden Sie ein, sich in der offenen Lektion " Tester: Wer ist das und wie wird man der wichtigste in Bezug auf die Qualität in der IT ?" Mit dem Beruf eines Testers vertraut zu machen. Der nächste findet am 23. April um 19:00 Uhr statt.

Und für diejenigen, die diesen IT-Beruf bereits erwerben möchten, empfehlen wir das Programm „ Software Tester “. 

All Articles