TEST TRENDS - Testen im Zeitalter der Digitalisierung - SQ-Magazin
←
→
Transkription von Seiteninhalten
Wenn Ihr Browser die Seite nicht korrekt rendert, bitte, lesen Sie den Inhalt der Seite unten
Ausgabe 57 l Dezember 2020 TEST TRENDS - Testen im Zeitalter der Digitalisierung REQUIREMENTS DAS RICHTIGE PRODUKT BAUEN RISIKOBASIERTES TESTEN RISIKEN IDENTIFIZIEREN UND REDUZIEREN ADVANCED INTELLIGENCE VON DER FORSCHUNG IN DIE REALITÄT ISSN 2367-3516 Folgen Sie uns auf Twitter. Facebook. Instagram. twitter.com/SQMagazin / facebook.com/SQforyou / instagram.com/isqicert
Editorial Liebe Leserinnen und Leser, Auch als ein denkwürdiges und merkwürdi- schönes und gesundes Weihnachts- Online-Schulung ges Jahr liegt hinter uns. Die Corona- fest im Kreise Ihrer Familie verbun- buchbar! Pandemie hat dieses Jahr bestimmt. den mit den besten Wünschen für das Gelernt haben wir, dass Online-Mee- Jahr 2021. tings und das Arbeiten im Home- Office gute Möglichkeiten bieten. Der Lassen Sie uns die Fähigkeit, sich über gute alte Handschlag läßt sich aber die kleinen Dinge des Lebens zu freu- eben nicht digitalisieren. Und so hof- en, wieder mehr in den Fokus rücken. JETZT fen wir hinsichtlich Mitarbeiterfüh- Vor allen Dingen lassen Sie uns auf AKKREDITIERT! rung und Kundenbindung auf norma- unsere Gesundheit fokussieren, denn le Zeiten. einmal mehr hat dieses Jahr gezeigt, ISTQB® CTAL dass sie unbezahlbar ist. Security Tester Auch mit den Wahlen in den USA ver- banden sich große Hoffnungen. Nun Ich hoffe sehr, wir können uns sehen. Security Schulung? wird ein gestandener älterer Herr mit Jahrzehnten politischer Erfahrung zum Hoffnungsträger. Ich rate dazu, erstmal gelassen abzuwarten. Auch Beste Grüße Joe Biden wird zuerst Amerikas Inter- Aber sicher. Mit Sogeti. essen vertreten. Da könnte noch man- cher Traum zerplatzen. ISTQB® CTFL • ISTQB® CTFL Agile Tester • Kurz vor dem Jahreswechsel wün- ISTQB® CTAL Testmanager • sche ich Ihnen auch ein besonders Ihr Stephan Goericke ISTQB® CTAL Test Automation Engineer • GTB CTFL Test Data Specialist iSQI’s® CABA • iSQI’s® CAE • iSQI® Scrum Master Pro • iSQI® Practitioner in Agile Quality A4Q Certified Selenium Tester A4Q Security Essentials IREB® CPRE-FL TMap NEXT® Test Engineer • Test Manager • Praxisworkshop TPI NEXT® Foundation • Was ist Ihre Meinung oder Erfahrung? Teilen Sie mir Ihre Gedanken mit! Ich freue mich auf Ihre Zuschrift und einen TPI NEXT® für Testmanager anregenden Austausch zu den verschiedensten Themen. s.goericke@sq-magazin.de Besuchen Sie uns unter Individuelle Schulungen: u. a. Security • www.sogeti.de/2020 Testautomatisierung • Agilität
5 Schwerpunkt 32 REQUIREMENTS – ADVANCED INTELLIGENCE WIE BAUE ICH FOR TESTING DAS RICHTIGE PRODUKT? DER WEG ZU QUALITATIV HOCHWERTIGER 25 UND KOSTENGÜNSTIGER SOFTWARE VON RALF DEMMER EIN MACHINE LEARNING BASIERTER TESTRECOMMENDER Fachliche Requirements als Ausdruck weis auf den bestehenden Zwang, dabei: Fehlerbehebung wird teurer, je der funktionalen und nichtfunktiona- Software zeitnah liefern zu müssen später Fehler entdeckt werden. len Erfordernisse an eine zu erstellen- oder zu wollen. Abhängig von Um- Darum lohnt sich eine frühzeitige Qua- de Software bilden naturgemäß die fang und Qualität der vorgesehenen litätssicherung, da die durch fehler- 36 Basis, auf der der gesamte Software- entwicklungsprozess aufsetzt. Zum Erstellen einer im Sinne des Auftrag- Testaktivitäten wird dann nur mit viel Glück ein hinreichender Prozentsatz der bestehenden Mängel aufgedeckt. hafte produktive Software entstehen- den Kosten um einiges höher sind als die auf den ersten Blick reizvollen Ein- TESTTRENDS UND IHRE AUS- Inhalt gebers guten Software ergeben sich WIRKUNGEN AUF QA-TEAMS aufgrund der Vielzahl der am Soft- Requirement Beschreibung des Business Analyse Übersetzen des Wunschs Umsetzung Programmierung Tests Abgleich Soll- vs. Go-Live Releasetermin Produktionsbetrieb „die Wahrheit“ wareentwicklungsprozess beteiligten Wunschs in IT-verständlicher Sprache Ist-Zustand Rollen und Personen hohe Ansprü- che an die strukturelle und inhaltliche Abbildung 1: Schema des Softwareentwicklungsprozesses (Quelle: Sogeti) Qualität der Requirements. SCHWERPUNKT BEST PRACTISE In der Regel wird das jedoch nicht der sparungspotentiale einer ausschließ- Dieser Artikel beschäftigt sich mit den Fall sein. Die Folge ist eine fehlerhaf- lich auf Schnelligkeit ausgerichteten 5 REQUIREMENTS - 16 TESTAUTOMATISIE- Unzulänglichkeiten, die im Software- te produktive Software. Das Problem Softwareentwicklung. X WIE BAUE ICH DAS RUNG MOBILER entwicklungsprozess häufig auftreten RICHTIGE PRODUKT APPLIKATIONEN und ihre Ursache in unzureichenden Requirements haben. Zudem werden 12 RISIKOBASIERTES 25 EIN MACHINE Qualitätsmerkmale beschrieben, de- TESTEN LEARNING ren konsequente Berücksichtigung BASIERTER ein gutes Gesamtergebnis erreichen 36 TESTTRENDS UND TESTRECOMMENDER lässt. IHRE AUSWIRKUNGEN AUF QA-TEAMS 32 ADVANCED DIE REALITÄT: ENTWICKLUNGSSCHNELLIG- INTELLIGENCE KEIT VS. FEHLERKOSTEN FOR TESTING IM FOKUS Die Erfahrung aus der Praxis zeigt, 34 SMARTE SYMBIOSE: dass anfordernde Stellen einen frei 19 WENN DIE KI KI-REDUZIERT TESTAUF- formulierten Text entwerfen und dar- ES SICH ANDERS WAND auf basierend - oftmals auch ohne An- ÜBERLEGT forderungsreview - das Umsetzen der 38 SELF-HEALING TEST- Anforderung erfolgt. 8 ASQF SPECIAL AUTOMATION MIT HEA- LENIUM Dieses gerne mit dem Schlagwort 28 ISQI NEWS „schlank“ versehene Verhalten wird Abbildung 2: Fehlerkosten im Verlauf des Softwareentwicklungsprozesses (Beispielwerte) nach Zeitpunkt der Fehler- zumeist gerechtfertigt mit dem Hin- findung (Quelle: Sogeti)
Schwerpunkt Ausgabe 57 l Dezember 2020 6 7 Mit zunehmender Reife des Produkts lich ist es, die beteiligten Rollen mit X Ein inhaltlicher Rahmen für Requirements X Alle am Softwareentwicklungsprozess X Allgemeines Wording schlägt gruppen- für gute Ergebnisse bei den nachge- wird das Beheben der Fehler immer den passenden Personen zu besetzen. ist definiert. beteiligten Rollen sind frühzeitig invol- spezifisches Wording. lagerten Prozessschritten und damit komplexer und damit exponentiell im- Auch muss die zur Verfügung stehen- Der Aufbau der Requirements folgt einer inhalt- viert. Beim Erstellen des Requirements soll kein per- dem zu entwickelnden Produkt gelegt. mer teurer. Die Gründe für das An- de Zeit ausreichen, das Endergebnis lichen Struktur, die als erstes festzulegen ist. Bevor das Requirement das Quality Gates 1 sonengruppenspezifisches Wording verwendet Maßgeschneiderte Funktionalitäten, steigen der Fehler- bzw. Fehlerbehe- „in time“ erreichen zu können. Sie gibt die zu hinterlegenden Inhalte und die passiert, sollten alle am Entwicklungsprozess werden, denn Unklarheiten und Missverständ- die zudem „in time“ und „in budget“ bungskosten werden deutlich, wenn beteiligten Rollen die Möglichkeit haben, Ver- nisse sind so bei Drittbeteiligten vorprogram- sind, sind wahrscheinlich und tragen wir uns vor Augen führen, dass je- ständnisfragen zu stellen und rollenspezifische miert. zu einem gelungenen Gesamtergeb- der vorhergehende Prozessschritt zur Unklarheiten auszuräumen. nis bei. ■ Fehlerbehebung mindestens einmal X Es existieren keine subjektiven Selbstver- erneut durchlaufen werden muss. X Die nichtfunktionalen Anforderungen sind ständlichkeiten. definiert. Ein jeder bewegt sich in seinem persönlichen Als besonders dramatischer Kosten- Abbildung 4: Fehlerwirkungen unzulänglicher Requirements (Quelle: Sogeti) Unter nichtfunktionalen Anforderungen wer- Erfahrungsumfeld. Daher muss der Ersteller treiber gelten die im Produktionsbe- den solche Teile des Requirements verstanden, des Requirements bei seinen Aktivitäten eine trieb gefundenen Fehlerzustände. Die Summe aller Unzulänglichkeiten, Art ihrer Verwendung vor (beispielsweise durch die beschreiben, in welchem Maße das Sys- Art Vogelperspektive einnehmen. Er berück- Neben den Fehlerbehebungskosten die in den Requirements vorhanden Definition zulässiger Einträge). tem die geforderte Leistung erbringen soll. Hier sichtigt die evtl. vorhandenen Unterschiede treten hier zusätzlich unmittelbare fi- sind, werden zusammen mit daraus in werden beispielsweise Angaben zu geforder- zwischen seinem eigenen Wissensstand und nanzielle Schäden durch Fehler im den Prozessfolgeschritten resultieren- X Akzeptanzkriterien sind definiert. ten Antwortzeiten oder zum Layout der Benut- dem der anderen handelnden Personen. Das vom Kunden verwendeten Produkt den Fehlern zu Fehlern in der produk- Das Erstellen eindeutiger Akzeptanzkriterien zeroberfläche gemacht. Werden keine nicht- Fehlen dieses Soft Skills manifestiert sich häu- und damit regelmäßig auch Reputa- tiven Anwendung. bewegt den Ersteller des Requirements dazu, funktionalen Anforderungen gestellt, dürfen fig in späteren Hinweisen auf ein „das weiß tionsschäden auf. sich erneut mit den Inhalten des Requirements die weiteren am Umsetzungsprozess Beteilig- man doch“. Es zeigt sich erneut: Je früher im Soft- zu beschäftigen. Bei diesem Review fallen re- ten davon ausgehen, dass die Art und Weise Ziel muss es also sein, möglichst früh wareentwicklungsprozess mit einer gelmäßig vorhandene Unzulänglichkeiten in der der Umsetzung ihrem Ermessen überlassen ist. Grundsätzlich sind die Auswirkun- im Softwareentwicklungsprozess eine Qualitätssicherung begonnen wird, Formulierung des Requirements auf. Die Akzep- gen unzureichender Requirements al- hohe Qualität der produzierten Arte- desto besser. Besonders wichtig ist da- tanzkriterien spiegeln wider, was genau gelie- X Es existiert eine inhaltliche Abgrenzung len Beteiligten hinreichend klar. Den- fakte sicherzustellen. Damit fällt der mit der erste Prozessschritt, also das fert werden muss, damit das Requirement als des Requirements. noch stößt man bei ihrer Erstellung optimalen Qualität der Requirements Erstellen der Requirements. Das für erfüllt angesehen wird. Sie müssen daher voll- Die Beschreibung, was das Requirement nicht inklusive der Anwendung aller Qua- eine besonders relevante Rolle zu. Requirements definierte Quality-Gate ständig und in sich schlüssig sein. Besonderes bezweckt, schärft das Verständnis für das, was litätsmerkmale auf Widerstände bei Q1 sollte nicht passiert werden dürfen, Augenmerk ist auf unmissverständliche Formu- bezweckt wird. Diese auch als „in scope“/“out handelnden Personen. Für diesen Fall QUALITY-GATES bevor nicht die geforderten Qualitäts- lierungen zu legen. Als sehr hilfreich hat es sich of scope“ bezeichnete Unterscheidung hilft den bietet es sich an, auf die zu erwarten- IM SOFTWAREENTWICKLUNGSPROZESS merkmale nachweislich erfüllt sind. in der Praxis erwiesen, die Akzeptanzkriterien Entwicklern, ihre Aktivitäten auf das Umzuset- den negativen Folgen hinzuweisen. einem Review mindestens durch das Testma- zende zu konzentrieren. Ziel muss es sein, dass alle Personen, Ein optimaler Software-Entwicklungs- WAS ZEICHNET EIN HOCHWERTIGES nagement zu unterziehen. die am Entwicklungsprozess beteiligt prozess betrachtet vom ersten bis REQUIREMENT AUS? X Der Zeitansatz muss ausreichend sein. sind, ein klares gesichertes Bild von zum letzten Prozessschritt die Qua- X Querverweise auf andere relevante Re- Werden Requirements aus Zeitmangel nicht der Erwartungshaltung haben, die der lität sämtlicher erstellter Artefakte Die Inhalte aller Requirements müs- quirements (falls vorhanden) sind gesetzt. vollständig formuliert und/oder nicht dem em- Auftraggeber hat. an vereinbarten Prüfpunkten (Quali- sen sich an den Interessen aller am Hinweise auf evtl. vorhandene Requirements pfohlenen Review unterzogen, ist es unmög- ty-Gates). Ungeachtet der gewählten Softwareentwicklungsprozess betei- mit Einfluss auf das Requirement helfen allen lich, die hier beschriebenen Qualitätsmerkma- Zusätzlich können firmen- oder pro- Softwareentwicklungsmethode erge- ligten Rollen orientieren. Darum ist Beteiligten, den Gesamtkontext, in dem sich le hinreichend erfüllen zu können. jektspezifische zusätzliche Erforder- ben sich vier sinnvolle Quality-Gates. ein hochwertiger konzeptioneller Be- das Requirement bewegt, besser zu verstehen. nisse an Requirements entstehen. Auf X Die richtige Person für das richtige Requi- diese und aus Gesetzen resultierende Requirement Business Analyse Umsetzung Tests Go-Live Produktionsbetrieb X Die gewählten Formulierungen sind ein- rement. Erfordernisse konnte dieser Artikel je- RALF DEMMER ist Senior Beschreibung des Übersetzen des Wunschs Programmierung Abgleich Soll- vs. Releasetermin „die Wahrheit“ Wunschs in IT-verständlicher Sprache Ist-Zustand deutig und abschließend. Die Person oder die Personengruppe, die das doch nicht eingehen. Consultant bei der Formulierungen mit Interpretationsspielraum Requirement erstellt, muss sachverständig SOGETI DEUTSCHLAND. Er Q1 Q2 Q3 Q4 führen dazu, dass eigenständige Deutungen, sein. Sie muss das fachliche Umfeld vollstän- FAZIT begleitet seit fast drei Jahr- dessen was gemeint sein könnte, vorgenom- dig überblicken. Sie muss den Wunsch des Auf- zehnten Softwareentwick- Abbildung 3: Quality Gates im Softwareentwicklungsprozess (Quelle: Sogeti) men werden. Deshalb sind eindeutige Formu- traggebers und das, was er damit bezwecken Schwachstellen im Produkt resultie- lungsprozesse in verschie- lierungen von Anfang an ein Muss. Die For- will, verstehen. Andernfalls entspricht das End- ren häufig aus fehlender Erfüllung er- denen Branchen und ist Kommunikationswege und Eskala- zugsrahmen notwendig, der in einem mulierungen dürfen keine „losen Enden“ ergebnis zwar den formulierten Bedürfnissen, forderlicher Qualitätsmerkmale, die ausgewiesener Experte der tionsmechanismen müssen für jede gemeinsamen Workshop zu entwi- hinterlassen. Das Verwenden von Formulie- geht aber am eigentlich benötigten Zweck vor- sich früh im Softwareentwicklungs- Analyse und der Optimierung beteiligte Rolle an jeder Stelle des Pro- ckeln ist. Die Verantwortung dafür rungen wie „usw.“, „z. B.“ oder „…“ führen bei. Negative Auswirkungen auf angrenzende prozess ergeben. von Softwareentwicklungspro- zesses definiert und bekannt sein. Ganz liegt üblicherweise beim Qualitätsma- zwangsläufig zu Unsicherheiten im weiteren Geschäftsbereiche müssen erkannt und verhin- Die Erstellung qualitativ hochwerti- zessen. Diese Expertise ist in wichtig dabei: Eine Eskalation muss je- nagement. Der formale Rahmen wird Softwareentwicklungsprozess. dert werden. ger Requirements ist elementar. Sind seinen Projekten bei großen dem am Projekt Beteiligten ausdrück- gesetzt durch das Erfüllen folgender die Requirements auf einem qualita- Automobilherstellern und Ver- lich zugestanden werden. Unerläss- Qualitätsmerkmale: tiv hohen Niveau, ist die Grundlage sicherungsunternehmen immer wieder von großem Nutzen.
ASQF Special Ausgabe 57 l Dezember 2020 8 ASQF Special EXKLUSIVE RABATTE AGIL ODER DOCH NICHT FÜR ASQF-MITGLIEDER (KOMPLETT) AGIL? HEISE MACDEV 02.12.2020 (Online) SOFTWARE QUALITY DAYS 2021 ALL ABOUT AUTOMATION FRIEDRICHSHAFEN Bei Interesse AUSGEWÄHLTE ERGEBNISSE DER UMFRAGE »SOFTWARETEST IN PRAXIS UND FORSCHUNG 2020« Achtung verschoben! Neuer 09.-10.03.2021 IT-TAGE Termin noch nicht bekannt. Friedrichshafen, melden Sie sich 07.-10.12.2020 (Online) Austria Center Vienna Messe bitte unter VON ANDREAS SPILLNER, ASQF, GTB; KARIN VOSSEBERG, HS BREMERHAVEN, ASQF; IT-GRC KONGRESS PROCESS INSIGHTS events @asqf.de 08.-09.12.2020 (Online) 10.-11.03.2021 (Online) MARIO WINTER, TH KÖLN, GTB1 Neue Mitglieder im ASQF e. V. Das German Testing Board (GTB e. V.) PractiTest hat zusammen mit der Technischen Israel WERDEN SIE MITGLIED IM ASQF! Hochschule Köln und der Hochschule https://www.practitest.com/ www.asqf.de/asqf/mitglied-werden Bremerhaven sowie dem Austrian Tes- ting Board (ATB) eine Neuauflage der Trainingsprovider Termine 2011 und 2015/16 erfolgreich durchge- führten Umfragen zum Status-Quo und Ort Datum Tage Anbieter der Entwicklung von »Softwaretest in CPPM Berlin 08.12.2020 4 Deutsche Projekt Akademie Praxis und Forschung« durchgeführt. CPPM Dresden 15.02.2021 4 Deutsche Projekt Akademie Unterstützt wurde die Umfrage u. a. CPPM Nürnberg 08.12.2020 4 EinfachStimmig vom ASQF e. V. CPPM Nürnberg 23.02.2021 4 EinfachStimmig Bei der aktuellen Befragung haben über CPPM Online 01.03.2021 4 imbus AG CPPM München 02.02.2021 4 Prozesswerk GmbH 1.200 Personen teilgenommen und CPPM München 06.07.2021 4 Prozesswerk GmbH 70 % davon haben vollständig die Fra- CPPM Online 07.12.2020 4 sepp.med gmbh gen aus Sicht des Managements, der CPPM Online 30.03.2021 4 sepp.med gmbh operativen Umsetzung und der For- CPPM Frankfurt 15.02.2021 4 Expleo group CPPM Köln 08.03.2021 4 Expleo group schung beantwortet. Die Ergebnisse CPPM Köln 28.06.2021 4 Expleo group stehen allen Interessierten im Internet CPIoT Online 30.11.2020 5 Fraunhofer FOKUS unter www.softwaretest-umfrage.de Abbildung 1: Prozentualer Anteil der Vorgehensmodelle CPIoT Online 15.03.2021 5 Fraunhofer FOKUS zur freien Verfügung. CPIoT Online 21.06.2021 5 Fraunhofer FOKUS CPIoT Online 22.01.2021 4 Nagarro GmbH CPIoT Online 22.06.2021 4 Nagarro GmbH 2/3 DER PROJEKTE ROLLENBILDER SIND EHER UNVERÄNDERT TESTVERFAHREN NOCH ANGESAGT? CPIoT Online 21.12.2020 3 oose Innovativ Information AG WERDEN AGIL DURCHGEFÜHRT CPIoT Hamburg 25.01.2021 3 oose Innovativ Information AG MEHR INFORMATIONEN ZU DEN Obwohl Agilität so verbreitet ist, Wenn sich keine Verschiebungen bei CPIoT Online 03.05.2021 3 oose Innovativ Information AG ZERTIFIZIERUNGEN FINDEN SIE UNTER In den letzten zehn Jahren hat das sehen sich viele noch den alten den Rollen abzeichnet, wie sieht es bei CPIoT Online 02.02.2021 3 sepp.med gmbh WWW.ASQF.DE/ASQF/PRODUKTE agile Vorgehen immer mehr an Be- Rollenbildern der Softwareentwick- den Kompetenzen aus? Agilität unter- deutung gewonnen. In 2020 werden lung zugehörig. Nach der Frage an die stützt eine hohe Autonomie der ein- Das ASQF-Karriereportal Die ausfühlichen Stellenangebote bereits 2/3 der Projekte agil durch- operativ Tätigen „Welcher Rolle ord- zelnen Teams. Dies kann dazu führen, Wir haben den passenden Job für Sie! finden Sie auf www.asqf.de/karriere geführt. Die Verwendung eines pha- nen Sie sich mit Ihren Hauptaufgabe dass etablierte Methoden hinterfragt senorientierten Prozesses ist weiter zu“, sind es 3 % die sich als Mitglied und ggfs. auch nicht (mehr) ange- rückläufig, nur jedes 5. Projekt wird im agilen Team sehen, 2 % nehmen wendet werden. Betrachten wir einen SOFTWARE-ENTWICKLER (M/W/D) nach diesem Vorgehen abgewickelt. die Rolle des Product Owners an und Aspekt: Den Einsatz von Testverfah- TEAMLEAD TESTMANAGER (M/W/D) IM BEREICH MEDIZINTECHNIK Nürnberg oder München Erlangen 2011 wurden noch mehr als die Hälfte 1 % sehen sich als Scrum Master. Im ren. Sie werden zur Erstellung von SENIOR CONSULTANT QualityMinds GmbH Corscience GmbH & Co. KG (54 %) phasenorientiert und nur knapp Vergleich dazu verstehen sich 32 % als Testfällen und zur Definition von Kri- TESTAUTOMATISIERUNG SCHWERPUNKT TESTARCHITEKTUR (M/W/D) ein Drittel (29 %) der Projekte agil Entwickler*innen, 21 % als Tester*in- terien zur Beendigung des Testens durchgeführt (s. Abb. 1). Das Verhält- nen, 19 % als Testmanager*innen genutzt. Welche werden wie intensiv München, Möhrendorf (bei Erlangen), Hofheim (bei Frankfurt), Köln, Norderstedt (bei Hamburg), Projektstandort Münster TESTDATEN-MANAGER (M/W/D) LEAD QA ENGINEER (M/W/D) nis hat sich somit innerhalb der letz- und 11 % als Projektleiter*in/Teamlei- eingesetzt und hat es Veränderungen Berlin Kreuzberg imbus AG Hamburg ten 10 Jahre mehr als gedreht. ter*in. Die alten Aufgabenfelder sind gegeben? Gnädinger & Jörder Consulting GmbH Thalia Bücher GmbH anscheinend noch nicht aufgehoben. 1 Unter Mitwirkung von Annette Simon, GTB; Frank Simon, GTB; Misperi Sakarya, TH Köln
ASQF Special Ausgabe 57 l Dezember 2020 10 ASQF Special Im Folgenden betrachten wir die häu- Charta, an Bedeutung gewonnen. Wie Pairwise-Testing, ein Ansatz um die AUSBLICK KARIN VOSSEBERG fige (Antwortoptionen: immer/meist) sieht dessen häufige Nutzung bei den Kombinationsvielfalt von Parametern in (karin.vosseberg@ Nutzung der Testverfahren von Tes- beiden untersuchten Gruppen aus? den Griff zu bekommen, wird kaum ge- Die Zahlen können dahin gehend hs-bremerhaven.de) ter*innen (inkl. Testmanager*innen) Bei den Tester*innen liegt explorati- nutzt. 11 % der Tester*innen und 32 % interpretiert werden, dass Testen – be- ist Professorin für IT- und Entwickler*innen. Die Nutzung ves Testen ohne Charta deutlich hö- der Entwickler*innen kennen das Ver- sonders das systematische – »out« ist. Systemintegration fahren nicht. (Mehr zum Pairwise-Tes- Spielt damit auch die Qualität der ent- mit dem besonderen ting bzw. n-weisem Testen unter http:// wickelten Software keine Rolle mehr? Fokus auf Qualität von leantesting.de/Openbook_Testen.pdf). Dies können nur – wenn überhaupt Software im Studienbereich Informatik – die kommenden Jahre belegen, ob Abbildung 4: Nutzungsentwicklung der Testverfahren an der Hochschule Bremerhaven und STRUKTURBASIERTES TESTEN eine Veränderung der Softwarequali- Präsidiumsmitglied im ASQF e. V. tät sich abzeichnet. Da das agile Team Die strukturbasierten oder auch für die Qualität verantwortlich ist, AUTOREN White-Box-Testverfahren sind eher kann es ebenso zu einer Verbesserung entwicklungsnah, da es um die Über- der Qualität kommen. Bedeutend für ANDREAS SPILLNER MARIO WINTER deckung von Anweisungen oder Ent- die Qualität im Hinblick auf die Qua- (andreas.spillner@ (mario.winter@th- scheidungen geht. Da der Unit-Test litätssicherung sehen in 2020 78,6 % asqf.de) war bis koeln.de) ist Professor oft von Entwickler*innen durchge- aller Befragten im operativen Bereich 2017 Professor an am Institut für führt wird, werden die Verfahren be- das Code Review und 73 % nennen der Hochschule Informatik der TH Köln, kannt sein und genutzt werden, oder? Clean Code. Bei den Entwickler*in- Bremen, ist Fellow Gründungsmitglied Die Differenzen zwischen Test und nen liegen beide Praktiken bei 85 %. der Gesellschaft für des German Testing Entwicklung beim Einsatz der Ver- Eine Interpretation der Zahlen wäre, Informatik e. V., Ehrenmitglied des GTB Board e. V. und Sprecher des Arbeitskreises fahren ist geringer, jedoch liegen die dass die Qualität (auch) in den Händen e. V. und Präsidiumsmitglied im ASQF e. V. »Testen und KI« in GI-Fachgruppe »Test, Zahlen meist unter 20 % (s. Abb. 3). der Entwickler*innen liegt – keine so Analyse und Verifikation von Software«. Wie wurden die Verfahren von al- schlechte Aussicht für die Zukunft. ■ len Befragten heute und vor 5 Jah- ren genutzt? Gib es Veränderungen? Abbildung 2: Nutzung der klassischen Testverfahren Alle der Verfahren werden heute we- niger eingesetzt, dies betrifft beson- DIGITALISIERUNG BEIM TESTEN UND IN DER FORTBILDUNG über alle Rollen ist auf der Internetseite her in der Nutzung als die Äquivalenz- ders die klassischen Verfahren (s. der Umfrage (s. o.) zu finden. klasssenbildung (s. Abb. 3). Wird die Tab. 1). Exploratives Testen, ob mit Das meistgenannte Testverfahren Antwortoption „teils/teils“ wieder oder ohne Charta, ist auf dem glei- ist der anwendungsfallbasierte Test. hinzugerechnet, nutzen Tester*innen chen Niveau geblieben, obwohl die Die Digitalisierungsstrategie des tings. Das auf die Test Challenge ab- Testberichts, die Art von Fehlern und 79,5 % der Tester*innen und 57,4 % der zu 74 % das explorative Testen ohne Agilität zugelegt hat. ASQF zeigt weitere Erfolge: Neben der gestimmte Rahmenprogramm am nicht-funktionale Tests. Damit wurden Entwickler*innen nutzen ihn häufig. Die Charta, bei den Entwickler*innen sind mittlerweile 3. Auflage der beliebten Nachmittag bot drei Webinare zu ver- drei Siegerteams gekürt: »klassischen Testverfahren« wie Äqui- es 46,1 %. ASQF Net Week im Oktober 2020, fand schiedenen Testthemen, bevor abends valenzklassenbildung, Grenzwertanaly- nun die gelungene 1. ASQF Test Chal- die Siegerteams gekürt wurden. 1. Platz: se und zustandsbasierter Test werden lenge statt. Bei den Test- und Fehlerreports der TestGilde No. One (TestGilde GmbH) von den Tester*innen deutlich öfter ein- Das Expertennetzwerk rief zum 3. No- Test-Teams achtete die Jury auf ver- gesetzt als von den Entwickler*innen – vember zehn Teams auf, zu zeigen, schiedene Kriterien: Qualität der Feh- 2. Platz & Bester Bug: zu etwa einem Drittel bzw. etwas weni- wer am besten in kurzer Zeit testet. ler- und Testberichte, Genauigkeit des Bug Hunter (imbus AG) ger (s. Abb. 2). Wird die Antwortoption Sie hatten dafür drei Stunden Zeit, in „teils/teils“ hinzugenommen, erhöht denen die Teams auch den Product 3. Platz: sich der Wert bei den Tester*innen auf Owner der zu testenden Software von encoway TeStars (encoway GmbH) 2/3 bei den beiden erstgenannten Ver- smapOne ausgiebig befragen konn- fahren und auf 54,7 % beim zustands- ten. Die Jury lobte die Erfahrung und Die Vergabe der Preise wäre ohne basierten Test. Bei den Entwickler*in- Qualität, die die tollen Teams mit- die Sponsoren inflectra, smapOne, nen sind es dann: Äquivalenzklassen brachten. QualityMinds, simpleworks, 28,7 %, Grenzwertanalyse 38,9 %, zu- Während die Teilnehmer testeten, dis- TestGilde, imbus, iSQI, dpunkt-Verlag, standsbasierter Test 42,7 %. kutierten die Jury-Mitglieder, Maik MaibornWolff, TSTR nicht möglich Nogens, Ursula Beiersdorf, Kerstin gewesen. Der ASQF dankt den Spon- EXPLORATIVES TESTEN Thiemann und Dr. Erhardt Wunder- soren, den Testteams und der enga- lich mit dem Schirmherrn Prof. Dr. gierten Jury für ihre Teilnahme und Einhergehend mit der Agilität hat ex- Andreas Spillner über die Entwick- Unterstützung. Wir freuen uns auf ploratives Testen, ob mit oder ohne Abbildung 3: Nutzung der neueren & White-Box-Testverfahren lungen und Trends des Software Tes- eine Wiederholung im nächsten Jahr.
Schwerpunkt Ausgabe 57 l Dezember 2020 12 13 RISIKOBASIERTES TESTEN siken werden auch Planungsrisiken trieb dar. Das risikobasierte Testen hat schen Hintergrund (z. B. Entwickler) genannt und werden im Rahmen des zum Ziel, diese Risiken frühzeitig zu eingebunden werden. Produktrisi- Projektmanagements eines Projekts erkennen, geeignete Testmaßnahmen ken können mittels Risiko-Workshops, PRAKTISCHE ANWENDUNG DES RISIKOBASIERTEN behandelt. Produktrisiken werden auch Qualitätsrisiken genannt, deren zu planen und umzusetzen und damit das Produktrisiko zu mindern. Checklisten oder Experten-Interviews identifiziert werden, können sich aber TESTENS IN UNTERSCHIEDLICHEN EINSATZSZENARIEN Behandlung widmet sich das risikoba- sierte Testen. Beim risikobasierten Testen wer- den Risiken derart reduziert, dass die auch aus einer Analyse der Testba- sis ergeben oder als Ergänzung zur VON FLORIAN FIEBER Eintrittswahrscheinlichkeit gesenkt Testbasis ermittelt werden, z. B. auf RISIKOMANAGEMENT UND TESTEN wird, das Schadensausmaß lässt sich Grundlage bekannter Fehler oder Er- i. d. R. nicht durch Testen reduzieren. fahrungen der Stakeholder. Sowohl Projekt- als auch Produktrisi- Die Eintrittswahrscheinlichkeit wird Bei der Bewertung von Produktrisiken Risikobasiertes Testen ist eine der ef- ten dar, bei dem die Testbedingungen Zur systematischen Behandlung von ken sind im Kontext von Testprojek- gesenkt, indem getestet wird, Fehler ist ebenso eine fachliche und techni- fektivsten und effizientesten Test- und ihre Prioritäten aus den Anforde- Risiken sollte ein entsprechendes Ri- ten relevant. Allgemeine Projektrisi- gefunden und behoben werden und sche Perspektive erforderlich. Wäh- vorgehensweisen und eine sinnvol- rungen und deren Prioritäten (sofern sikomanagement etabliert werden. Es ken (z. B. Personalengpässe) sowie die Fehler demnach nicht mehr auf- rend die fachlichen Stakeholder da- le Unterstützung bei der adäquaten vorhanden) abgeleitet werden. Die- umfasst die Identifizierung, Bewer- testspezifische Projektrisiken (z. B. treten können. Je intensiver getestet bei insbesondere die Faktoren für Priorisierung und Verteilung der Auf- se Vorgehensweise stößt jedoch dann tung und Minderung von Risiken und verspätete Bereitstellung des Testob- wird, desto mehr Fehler können ge- das Schadensausmaß identifizieren wände in einem Testprojekt. In die- an ihre Grenzen, wenn die Testbasis folgt dem Prinzip, aus höheren Risiken jekts) können und sollten im Rahmen funden und die Eintrittswahrschein- bewerten können (z. B. Bedeutung sem Artikel werden die Grundlagen besonders groß, lückenhaft und/oder umfassendere und dringendere Maß- des Testmanagements behandelt wer- lichkeit entsprechend gesenkt wer- der betroffenen Funktion für die Ge- des Risikomanagements und seiner schlecht priorisiert ist. In solchen Situ- nahmen abzuleiten als aus niedrige- den. Für das risikobasierte Testens den. schäftsziele, mögliche Vertragsstra- Anwendung im Testen beleuchtet und ationen lohnt es, sich mit den Risiken ren Risiken. stehen jedoch die Produktrisiken im fen oder Image-Schäden), können die unterschiedliche Einsatzszenarien zur des Testobjekts auseinanderzusetzen Grundsätzlich lassen sich im Risiko- Vordergrund. Identifizierung, Bewertung technischen Stakeholder vor allem die praktischen Anwendung des risikoba- und diese Risiken systematisch in den management Projektrisiken und Pro- und Minderung von Produktrisiken Faktoren für Eintrittswahrscheinlich- sierten Testens in verschiedenen Pro- Testaktivitäten zu berücksichtigen. duktrisiken unterscheiden. Projektrisi- Risikobasiertes Testen Zur Identifizierung von Produktrisiken keit identifizieren und bewerten (z. B. jektsituationen vorgestellt. ken sind Risiken, die den Projekterfolg zur Behandlung von Produktrisiken ist sowohl eine fachliche als auch eine die Komplexität des Testobjekts, ein- GRUNDLAGEN DES RISIKOMANAGEMENTS beeinträchtigen, sie treten während Risikobasiertes Testen ist ein syste- technische Sicht notwendig. Neben gesetzte Werkzeuge und Technolo- DIE PRIORISIERUNG VON TESTAKTIVITÄTEN des Projekts auf und müssen während matischer Ansatz zur Behandlung von Testern sollten hierfür insbesonde- gien). Für beides sind geeignete und Ein Risiko ist definiert als „ein Faktor, des Projekts behandelt werden. Pro- Produktrisiken. Aus Sicht des Tes- re Stakeholder mit einem geschäftli- abgestimmte Bewertungskriterien Eine wesentliche Rahmenbedingung der zu negativen Konsequenzen in der duktrisiken sind Risiken, die die Qua- tens stellt ein Produktrisiko i. d. R. das chen Hintergrund (z. B. Produktmana- und Skalen erforderlich, um eine des Testens ist der Grundsatz, dass Zukunft führen könnte, gewöhnlich lität des Produkts beeinträchtigen, mögliche Auftreten und die Auswir- ger, Analysten, Product Owner) wie möglichst konsistente und akzeptierte vollständiges Testen praktisch nicht ausgedrückt durch das Schadensaus- sie treten nach dem Projekt auf (d. h. kung eines Fehlers im laufenden Be- auch Stakeholder mit einem techni- Bewertung zu erhalten. X möglich ist. Die Menge der Anforde- maß und die Eintrittswahrscheinlich- während der Nutzung des Produkts), rungen an das Testobjekt sowie deren keit“ (vgl. https://glossary.istqb.org/ müssen aber auch schon während des Ausprägungen, Varianten, Beziehun- de/term/risiko) oder vereinfacht aus- Projekts behandelt werden. Projektri- gen und Wechselwirkungen erzeugen gedrückt: eine riesige Menge an potentiellen Risiko = Schadensausmaß x Eintrittswahrscheinlichkeit Testbedingungen, welche bei einem nicht-trivialen Testobjekt weder in an- Je höher das Schadensausmaß und die Eintrittswahrscheinlichkeit sind, desto gemessener Zeit noch mit angemes- höher ist folglich auch das Risiko (vgl. Abbildung 1). senem Aufwand durch Tests abge- deckt werden können. In den meisten Testprojekten ist so- mit eine der zentralen Herausforde- rungen, sich auf eine beherrschbare, endliche Menge an Testbedingungen zu konzentrieren, um das Testen mög- Abbildung 1: Ein Risiko ist am höchsten bei lichst effektiv und effizient umzuset- hohem Schadensausmaß und hoher Eintritts- zen. Für das Testprojekt muss folglich wahrscheinlichkeit und am niedrigsten bei eine geeignete Strategie zur Auswahl niedrigem Schadensausmaß und niedriger und Priorisierung der Testbedingun- Eintrittswahrscheinlichkeit. Ein hohes gen und einer entsprechenden Auf- Schadensausmaß und eine niedrige Eintritts- wandszuweisung für die Testaktivitä- wahrscheinlichkeit ergeben die gleiche Risiko- Abbildung 2: ten gewählt werden. stufe wie ein niedriges Schadensausmaß und Beispiele zur Wahl von Testverfahren basierend auf der Risikostufe. Eine häufig gewählte Teststrategie eine hohe Eintrittswahrscheinlichkeit. (Quelle: qualitydojo) stellt das anforderungsbasierte Tes- (Quelle: qualitydojo)
Schwerpunkt Ausgabe 57 l Dezember 2020 14 15 Für die Minderung von Produktrisiken Szenario 2: gewichten und damit einen gemeinsa- verteilt und das Testen effektiver ge- GRÜNDER und Geschäftsführer der werden entsprechende Testaktivitä- Lücken in der Testbasis schließen me und abgestimmte Bewertung der staltet werden kann. Das Testen orien- QUALITYDOJO IT-CONSULTING ten geplant und durchgeführt. Die Ri- Die Anforderungen an das Testobjekt Abweichungen zu finden. tiert sich sowohl an geschäftlichen als GMBH ist seit 15 Jahren als Berater sikostufe dient damit als Priorisierung sind nicht vollständig erfasst und do- auch technischen Risiken, wodurch an und Trainer im Bereich der Qualitäts- der Testaktivitäten:, je höher die Risi- kumentiert, es steht folglich nur eine Szenario 4: den Stellen getestet wird, an denen sicherung von Softwaresystemen ak- kostufe, desto intensiver und früher nicht vollständige bzw. lückenhafte Testaufwände für User Storys der höchste Schaden zu erwarten und tiv. Seine Schwerpunkte liegen dabei sollten die Testaktivitäten erfolgen. Testbasis zur Verfügung. Für den Test schätzen und planen die Wahrscheinlichkeit des Auftretens im Testmanagement von Software- Die Höhe der Risikostufe kann Ein- wäre es nicht ausreichend nur die spe- Bei der Schätzung und Planung der eines Fehlers am höchsten sind. projekten sowie der Analyse und Ver- fluss auf alle Testaktivitäten haben, zifizierten Elemente der Testbasis ab- Testaufwände für eine User Story ist Risikobasiertes Testen lässt sich in der besserung von Testprozessen. Er ist z. B. Umfang, Detaillierungsgrad und zudecken, da dadurch wesentliche das risikobasierte Testen eine einfa- Praxis sehr unterschiedlich ausprä- außerdem Mitglied und stellvertreten- Formalisierung der Testarbeitsergeb- Aspekte des Testobjekts nicht bzw. che und pragmatische Vorgehenswei- gen, es lässt sich informell und leicht- FLORIAN FIEBER der Vorsitzender des German Testing nisse, Bestimmung der Testverfah- nicht ausreichend getestet blieben se für die Tester. Nimmt man die Prio- gewichtig für einzelne Testaktivitäten florian.fieber@qualitydojo.com Board e. V. und engagiert sich dort ren (vgl. Abbildung 2), Teststufen und und möglicherweise kritische Fehler risierung und Aufwandszuweisung genauso anwenden wie formal und ehrenamtlich, u. a. als Leiter der GTB- Testarten oder Festlegung der Reihen- nicht aufgedeckt würden. Es fehlen auf Ebene der einzelnen User Storys schwergewichtig für den gesamten Arbeitsgruppe Acceptance Testing folge der Testdurchführung. zunächst entsprechende Informatio- vor, so lässt sich zur Bewertung der Testprozess inkl. der angrenzenden sowie als stellvertretender Leiter der nen, um diese weiteren Testbedingun- Eintrittswahrscheinlichkeit die ge- Prozesse. ■ GTB-Arbeitsgruppe Glossar. EINSATZSZENARIEN gen zu identifizieren. Die Lücken in schätzte Komplexität der User Sto- DES RISIKOBASIERTEN TESTENS der Testbasis stellen hierbei mögli- ry verwenden und zur Bewertung des che Produktrisiken dar, diese lassen Schadensausmaßes der Business Va- Im Folgenden sollen nun beispielhaft sich z. B. durch frühe und regelmäßi- lue der User Story. Beide Informatio- typische Projektsituationen vorge- ge Risiko-Workshops mit den Stake- nen sind wesentliche Attribute einer stellt werden, in denen das risikoba- holdern identifizieren und bewerten User Story, die Risikostufe lässt sich sierte Testen praktisch angewendet und auf dieser Grundlage die entspre- daraus sehr leicht (und ggf. sogar werden kann. Allen Beispielen ge- chenden Tests planen und priorisie- automatisiert) ermitteln. mein ist, dass bei den entsprechen- ren. Die Teststrategie könnte in die- den Testaktivitäten „risikobasiert ge- sem Szenario als eine Kombination Szenario 5: dacht“ wird, d. h. grundsätzlich die aus anforderungsbasiertem Testen Effektive Testsitzungen Dimensionen Schadensausmaß und (Testbedingungen aus der Testbasis) beim explorativen Testen Eintrittswahrscheinlichkeit in die Test- und risikobasiertem Testen (Testbe- Die Effektivität des explorativen Tes- aktivitäten einbezogen werden. dingungen aus den Produktrisiken) tens hängt u. a. stark von der indivi- ausgeprägt werden. duellen Erfahrung und Intuition der Szenario 1: Tester und Testerinnen ab. Insbeson- ion Tests priorisieren bei nicht oder Szenario 3: dere bei der Anwendung von Time- mat to ungenügend priorisierter Testbasis Abweichungen und Fehler bewerten boxes im sitzungsbasierten Testen Au Die Elemente der Testbasis (z. B. einzelne Anforderungen) sind entwe- Bei der Testdurchführung wird eine Menge von Abweichungen gefun- kommt es darauf an, in der verfügba- ren Zeit die besten Tests zu identifizie- Test Data A A S Continuous der gar nicht oder nur ungenügend den, bei denen zunächst nicht klar ist, ren und auszuführen. Eine risikoba- priorisiert (z. B. haben 90 % aller An- ob es sich tatsächlich um Fehler han- sierte Denkweise kann hierbei enorm forderungen die höchste Priorität). delt. Test, Entwicklung und Fachseite helfen, indem sich die Testerin oder icroservices Testing Aus dieser Testbasis lässt sich direkt haben unterschiedliche Perspektiven der Tester regelmäßig die Fragen „Wo M keine sinnvolle Priorisierung der Test- auf die Abweichungen und kommen ist der höchste Schaden zu erwar- aktivitäten ableiten, weil der Umfang zu unterschiedlichen Bewertungen, ten?“ und „Wo ist ein Fehler am wahr- gleich priorisierter Anforderungen sodass ein Konsens schwer zu finden scheinlichsten?“ stellen, und damit in d zu hoch ist. Es fehlen zunächst ent- ist – insbesondere bei Abweichun- der begrenzten Zeit das effektivste Er- Cloautive conta sprechende Informationen, auf deren Grundlage eine sinnvolle Priorisie- gen, welche sich nicht direkt aus der verfügbaren Testbasis ergeben. Ins- gebnis liefern. N iner rung vorgenommen werden könnte. besondere bei der Bewertung von ZUSAMMENFASSUNG tes Das risikobasierte Testen liefert in die- Abweichungen, die „einfach so“ ge- erne gfb.trimetis.com/DevOps/ CI/CD sem Szenario durch die Analyse der funden werden, d. h. nicht auf Grund Das risikobasierte Testen hat gegen- Kub Pipelin Testbasis bzw. ihrer Elemente und eines zuvor spezifizierten Testfalls über anderen Testvorgehenswei- e die Bewertung der ermittelten Risiken der sich auf eine bestimmte Testbe- sen, wie z. B. dem anforderungsba- Test Data Management Test Consulting Test Automation & RPA eine gute Grundlage für die Priorisie- dingung bezieht, unterstützt das risi- sierten Testen, wesentliche Vorteile. • Anonymisierte und synthetische Testdaten • Testprozess-Beratung • Schnellere Entwicklung bei steigender Qualität rung der folgenden Testaktivitäten. kobasierte Testen dabei, die verschie- Ein großer Vorteil liegt vor allem da- • Verwaltung von Testdaten • Managed Testing • Kostenreduzierung • Test Data as a Service • Optimierung Testinfrastruktur • Höhere Testabdeckung und Synergien denen Perspektiven zu integrieren, zu rin, dass die Testaufwände effizienter Telefon +49 6171 5060-60 gfb@trimetis.com gfb.trimetis.com
Best Practice Ausgabe 57 l Dezember 2020 16 17 Best Practice TESTAUTOMATISIERUNG Eine weitere Komponente ist die eingetragen werden. Zusätzlich muss zeichnung der App-Bedienungsschrit- Steuerkomponente, die die Fernbe- noch mindestens der Plattform-Name te, die der Benutzer normalerweise dienung von auf Geräten installier- (hier: „Android“) als „platformName“ entsprechend macht. MOBILER APPLIKATIONEN ten Apps unterstützt. Hierzu verwen- eingetragen werden. Dazu werden noch mal die Capabili- den wir Appium, da damit sowohl eine ties so angepasst, dass die zu testen- Steuerung von Android als auch von de App direkt gestartet wird. Damit VON CARSTEN NEGRINI iOS-Geräten und auch von Simula- wird sichergestellt, dass das Testgerät toren möglich ist. Es können also so- zu Beginn des Tests immer im repro- wohl physische Geräte, die per USB duzierbaren Zustand ist und die App, Testautomatisierung spielt gerade bei Die Tatsache, dass agiles Entwickeln Oberflächenkomponenten der App angeschlossen sind, als auch die be- welche getestet werden soll, ebenfalls identifizieren der Entwicklung von mobilen Apps und der Trend zu CI/CD häufiges Um- kannten Simulatoren gesteuert wer- reproduzierbar im festgelegten Zu- eine wichtige Rolle. So gilt es in der bauen der App erfordert und damit den. stand ist. mobilen Welt, Apps auf verschiede- auch einen häufigen Regressionstest, Skript aufzeichnen Die entsprechenden Elemente der Be- Screenshot Appium: Konfiguration der Properties, um Dies wird erreicht über den Eintrag nen Plattformen (iOS, Android) und erhöht den Nutzen der Testautomati- nutzeroberfläche werden mittels Ap- eine Verbindung zu einem angeschlossenen Android- „app“ sowie über den Pfad zu der Skripte in eine normale Java-Klasse unter verschiedenen Betriebssystem- sierung in diesem Bereich. übernehmen (Assertions nicht vergessen) pium-Inspektors aufgezeichnet und Testgerät zu ermöglichen. entsprechenden App. Die Alterna- versionen zu testen. Je nach Anwen- können dann programmatisch ange- tivmöglichkeit besteht darin, den Pa- dungsfall sind auch noch spezielle WELCHE TOOLS KANN MAN VERWENDEN? Java-Klasse kann mit der normalen sprochen werden. Mit dem Klick auf „Start Session“ ckagenamen und die Activity der App Build-Pipeline gebaut und ausgeführt werden Szenarien denkbar, sodass die Anzahl Als Voraussetzung für ein lauffähiges wird nun die Verbindung zwischen anzugeben, die gestartet werden soll. wiederholt durchzuführender Tests Es gibt viele Programme, mit denen Aufnahmeablauf (Quelle: redbots) Appium ist noch das Android SDK zu Appium und dem Testgerät etabliert, Nun kann die Appium-Session gestar- drastisch steigt und eine effiziente man mobile Apps automatisiert tes- installieren, da Appium die Android die notwendige Installation von Ap- tet werden und es öffnet sich die App Testautomatisierung praktisch zwin- ten kann. Bekannte Platzhirsche sind: Dabei werden im ersten Schritt die Plattform-Tools als lokale Installation pium-Komponenten auf dem Endge- sowohl auf dem Testgerät wie auch im gend wird. Oberflächenkomponenten der App voraussetzt. rät wird bei der ersten Verbindung Appium-Inspektor. X X Appium identifiziert. Im zweiten Schritt wird automatisch durchgeführt. Achtung: WARUM AUTOMATISIERT MAN TESTS? X Ranorex ein Skript aufgezeichnet, dass die Be- VERBINDUNGSAUFBAU Hier sind eventuell notwendige Dialo- X UFT-Mobile nutzerinteraktionen mit der App be- APPIUM-TESTGERÄT ge auf dem Endgerät zu beachten und Allem voran gilt es, die Kundenzufrie- einhaltet. Im dritten Schritt wird das entsprechend zu beantworten. denheit stetig hochzuhalten und dabei redbots nutzt häufig Appium, wes- Skript aus dem vorherigen Schritt in Um Appium mit dem Testgerät zu ver- Das Testgerät muss sich im Entwick- nicht unnötig Zeit, Geld und Ressour- halb alle Beispiele in diesem Artikel zu eine Java-Klasse übernommen und binden, sind innerhalb Appium die lermodus befinden, die hierzu not- cen aufzuwenden. Gerade im mobi- Appium sind. Ranorex besitzt neben mit Assertions ergänzt, um das Soll- Capabilities (Verbindungen zu unter- wendigen Schritte sind je nach Her- len Bereich können die Kunden über einer attraktiven und nutzerfreundli- ergebnis eines jeden Schrittes abzu- schiedlichen Geräten) entsprechend steller und Betriebssystemversion die Appstores direkt öffentlich Rück- chen UI außerdem einen sehr guten testen. Im vierten Schritt schließlich zu setzen. Um die notwendigen Infor- unterschiedlich. Screenshot Appium: Ansicht des Appium-Inspektors, meldung zu ihren Erfahrungen mit den Support und stammt von einem eta- werden die so aufgebauten Java-Klas- mationen zu bekommen, ruft man mit- links ein Abbild des Bildschirminhaltes eines an- Apps geben. Zudem hat man meistens blierten Hersteller. UFT-Mobile bie- sen in die normale Build-Pipeline in- tels „adb devices“ die Liste der aktuell AUFZEICHNUNG DER APP-BEDIENUNG geschlossenen Gerätes, in der Mitte die Struktur des eine große Anzahl Installationen. Des- tet viele Features im High-End Be- tegriert, sodass die Tests nahtlos und angeschlossenen Geräte auf. Die so angezeigten Bildschirminhaltes, rechts Detailansicht halb spielt die Kundenzufriedenheit im reich, allerdings sind die Kosten und regelmäßig ausgeführt werden kön- erhaltene eindeutige Geräte-ID muss Nun beginnt der für die Automati- des aktuell angeklickten Elements (hier nicht selektiert). mobilen Bereich eine große Rolle. Einstiegshürden auch entsprechend nen. in die Appium-Capabilities als „udid“ sierung wesentliche Schritt: Die Auf- hoch. Doch wie wird die entsprechende Appium ist ein Opensource-Pro- WIE SIEHT EIN TYPISCHES SET-UP AUS? Kundenzufriedenheit erreicht? Mit- gramm und hat niedrige Einstiegshür- hilfe der Testautomatisierung lassen den, wodurch es sich für eine Vielzahl Vorweg: Der hier beschriebene Test- sich weitaus mehr Tests in gleichblei- von Anwendern eignet. Zudem ist es aufbau dient dazu, eine Android-App bender Zeit durchführen, was langfris- kompatibel mit dem Selenium Web- zu automatisieren. Ähnlich wird bei tig zu einer höheren Testabdeckung driver, sodass ein Investment in das der Automatisierung von iOS-Apps bei gleichzeitiger Kostenminimierung Wissen einer App-Automatisierung vorgegangen, allerdings dann anstel- führt. Testfälle können reproduzierbar auch übertragbar ist in die Automa- le Android Studio mit Xcode. und auf verschiedenen Plattformen tisierung einer Web-Applikation und Ein typischer Aufbau einer Testauto- beziehungsweise auf verschiedenen umgekehrt. matisierung besteht aus einer Kom- Betriebssystemen durchgeführt wer- Darüber hinaus lässt sich Appium ponente, die die Tests durchführt und den. Die App reagiert unter Batterie- auch leicht in die üblichen Build-Pi- steuert. Wir verwenden dazu TestNG, betrieb anders als unter Netzbetrieb? pelines integrieren und liefert daher da diese Komponente eine sehr fein- Oder im WLAN anders als im LTE- schnell Ergebnisse. Der klassische granulare Steuerung von Testreihen- Netz? Solche Szenarien kann man ef- Aufnahmeablauf wird anhand dieses folgen ermöglicht, die Gruppenbil- fizient nur durch eine geschickte Test- Bildes etwas verdeutlicht: dung von Tests unterstützt und ein automatisierung testen. schönes Reporting direkt mitliefert.
Best Practice Ausgabe 57 l Dezember 2020 18 19 Im Fokus „WENN DIE KI Wir verwenden hier beispielhaft eine natürlich wichtig, um Fehler auszu- der häufig benutzten Apps mit Versio- merzen und die Kundenzufriedenheit nen für iOS und Android. hochzuhalten. ES SICH ANDERS ÜBERLEGT“ Nun kann man über die Buttons oben beispielsweise einzelne Elemente der WELCHE APPS App selektieren, anklicken, über den KÖNNEN GETESTET WERDEN? Bildschirm mit dem Finger streichen und auch direkten Java-Code zur Test- Es können alle mobilen, nativen oder TESTDATENMANAGEMENT IN MODERNEN ZEITEN automatisierung erzeugen. hybriden Apps getestet werden, die VON ANNE KRAMER Wir klicken also auf den „Augen“-But- auf iOS oder Android basieren. Dies ton, um die Aufzeichnung eines Test- setzt jedoch voraus, dass eine Web- falls zu starten. Der Button färbt sich driver-Implementierung vorliegt. Seit Langem schon unterstützen Mus- keiten. Zum einen müssen die Daten der sich hauptsächlich um dieses Thema nach Aktivierung rot ein. Mit dem „Se- Auf der anderen Seite ist es jedoch tererkennungsverfahren Mediziner bei anonymisiert werden. Zum anderen kümmert und nicht – wie der Product Ow- lect elements“-Werkzeug (in dem Dia- schwer, hardwarenahe-Tests wie etwa der Diagnose. Diese Verfahren basie- sollen sie hinsichtlich der Krankheits- ner - noch jede Menge andere Aufgaben log blau markiert) klicken wir inner- Screenshot Appium: Detailansicht, in welcher Skript- Bluetooth- oder eID-Tests durchzufüh- ren auf fest programmierten Algorith- bilder, Patienteneigenschaften (Alter, erfüllen muss. Damit vermeiden Sie einen halb der App (im Dialog ganz links) auf sprache Appium die Benutzeraktionen aufzeichnen soll. ren, da solche Tests direkten Zugriff men mit vorab definierten Regeln, was Geschlecht, Gewicht …) repräsenta- kritischen Flaschenhals im Projekt. den Button „Datenvolumen buchen“. Hier ausgewählt „Java – Junit“. auf die Hardware des Testgerätes be- zwar zu guten Ergebnissen führt, in der tiv sein. Bei einer KI kommt noch er- X Verankern Sie im Änderungsmanagement nötigen. Regel jedoch langwierig zu program- schwerend hinzu, dass es zum „Bias“- neben der Frage, ob die Änderungen Ein- Der durch den Appium-Inspektor er- mieren ist. Effekt kommen kann. fluss auf die Testfälle haben, ganz expli- zeugte Code kann in eine neue Java- TIPPS ZUM ENDE Nun gibt es Deep Learning-Verfah- Es ist daher unter Umständen schon zit auch die Frage, ob Testdaten betroffen Klasse importiert werden, diese kann ren, bei denen das System zunächst schwierig, eine ausreichende An- sein könnten. Denken Sie dabei auch an dann durch weitere Features erweitert Die wichtigste Erkenntnis, die wir hier mit Trainingsdaten angelernt wird. zahl an Trainingsdaten zu bekommen. die Systemtests. werden. So muss der Code häufig er- nennen können, klingt so simpel wie Wir sagen der künstlichen Intelligenz Umso glücklicher sind wir Tester, X Verankern Sie die Bereitstellung der Test- weitert werden um dynamische Test- prägnant: Ohne Kommunikation der (KI), welches Bild Auffälligkeiten zeigt wenn schließlich sogar Validierungs- daten in der „Definition of Done“ des Al- daten, die aus einer CSV-Datei ein- Entwickler und Tester wird auch die und welches nicht. Im Produktivbe- daten vorliegen. gorithmus. gelesen werden können (manchmal beste Automatisierung nicht die ge- trieb lassen wir KI dann die antrainier- Screenshot Appium: Hier Appium-Inspektor mit lau- auch aus einer Datenbank) und dann wünschten Ergebnisse liefern. Die ten Auswertungsverfahren auf neue ÄNDERUNGEN IM ALGORITHMUS DER KI ALTERUNGSEFFEKTE fender Skriptaufnahme. Links die Ansicht wie auf dem an die App geschickt werden. Rolle der Tester kann durch automa- Untersuchungsergebnisse anwenden. angeschlossenen Gerät, rechts oben die Ansicht des auf- tisierte Tests nicht ersetzt werden, Diese Vorgehensweise besticht durch Und dann kommt es: Das Update des Auch ohne KI ist das Änderungsma- gezeichneten Skriptes. DOCH WIE HOCH IST DER AUFWAND? vielmehr schafft aber eine gute Zu- ihre Effizienz, stellt allerdings die Qua- Algorithmus. Die Magie des Deep Le- nagement von Testdaten eine Heraus- sammenarbeit zwischen Test und Ent- litätssicherung vor neue Herausforde- arnings wird erneut angestoßen und forderung. Oftmals nimmt die Quali- In der rechten unteren Ecke kann man Um dies zu verdeutlichen, schau- wicklung die Grundlage erfolgreicher rungen. plötzlich kommen völlig neue Ergeb- tät der Testdaten über die Zeit hinweg jetzt die Detailansicht des ausgewähl- en wir uns am besten einen typi- Testautomatisierung und damit zufrie- nisse heraus. In einem unserer Projekte ab. Der erste Datenpool ist noch sehr ten Elements sehen („Selected Ele- schen Entwicklungszyklus einer agi- dener Kunden. ■ TESTDATEN FÜR KI SIND RAR hatte sich die Sensitivität des Algorith- repräsentativ. Dann wird ein neuer ment“). len Softwareentwicklung genauer an. mus geändert. Krankes Gewebe wur- Parameter eingeführt. Ist dieser op- Ein Klick auf den Button „Tap“ wird Angenommen, diese Folge beinhal- Zu den guten Praktiken im Machine Le- de erst ab einem höheren Schwellwert tional, bleiben die bestehenden Test- jetzt sowohl in der App-Ansicht als tet 3 Sprints à 3 Wochen, wobei in je- arning gehört, Trainingsdaten und Va- erkannt. Systemtestfälle, die im letz- daten weiterhin gültig. Es werden nur auch auf dem angeschlossenen Test- der Woche neue Features hinzuge- lidierungsdaten sauber zu trennen. ten Testlauf noch vollkommen in Ord- ein paar Datensätze geändert, um den gerät die Benutzeraktion durchführen, fügt werden sollen und alle 9 Wochen CARSTEN NEGRINI Während die Trainingsdaten dazu ver- nung waren, schlugen im Regressions- optionalen Parameter zu prüfen. Das der Button „Datenvolumen buchen“ eine neue Version veröffentlicht wer- ist Gründer und Ge- wendet werden, den Algorithmus an- test fehl. Wir mussten warten, bis neue führt jedoch dazu, dass bei 99 % der wird also angeklickt. Die Veränderung den soll. Bei manuellen Tests ist der schäftsführer der red- zulernen, dienen die Validierungsdaten Validierungsdaten zur Verfügung stan- Testdaten besagter Wert nie gesetzt ist sowohl in der App-Ansicht wie Aufwand, um eine Regression für die- bots GmbH, eines auf für den Test. Beide Datenpools müssen den. Dabei ging es bei unseren Tests ist. Ist der Parameter zwingend er- auch auf dem Testgerät sofort sicht- se Tests durchzuführen entsprechend Java-Softwareent- streng getrennt werden, denn sonst gar nicht um den Algorithmus an sich, forderlich, müssen alle Testdaten an- bar. hoch. Automatisiert man die Tests wicklung und Test- können wir das Testergebnis blind vor- sondern um die Funktionen ”drumher- gepasst werden. Erneut ist der Weg Der entstehende Code, um den Test- hingegen, so ist zwar der Aufwand automatisierung spe- hersagen. Die Trainingsdaten werden um”, also die Anzeige, das Abspeichern des geringsten Widerstandes verlo- fall zu reproduzieren, wird sofort oben des eigentlichen Tests höher, da- zialisierten Softwarehauses mit Sitz in immer „passed“ ergeben, denn genau etc. … Daher war es auch nicht offen- ckend. Man setzt in einigen Testfäl- rechts im Feld „Recorder“ angezeigt. für sinkt jedoch der Einsatz von Res- Bonn und Karlsruhe. Dank zahlreicher er- das hat die KI ja gelernt. sichtlich, dass unsere Tests von der Än- len die verschiedenen Äquivalenz- Jetzt kann noch ausgewählt werden, sourcen für die Regressionstests sig- folgreich umgesetzter Projekte u. a. bei Wenn Testdaten nicht oder nur schwer derung betroffen sein würden. klassen für den neuen Parameter ein in welcher Sprache der Code ausge- nifikant, sodass der Gesamtaufwand DAX-Unternehmen verfügt er über eine künstlich erzeugt werden können, und füllt die verbleibenden Datensät- führt werden soll. ebenfalls stark sinkt. langjährige und fundierte Erfahrung in muss auf reale Daten zurückgegrif- Aus Problemen soll man ja bekanntlich ze mit einem gültigen Wert auf. Auch Wir verwenden häufig Java, die Wahl Man kann also sagen, dass sich eine den Bereichen Testautomatisierung, Test- fen werden. Jeder, der schon einmal lernen. Folgende Ideen könnten sich hier haben wir bei 99 % der Testdaten der Testautomatisierungssprache ist geschickte Testautomatisierung vor strategien und Architekturfestlegungen Testdaten für diagnostische Software als hilfreich erweisen: den gleichen Wert. Wir setzen an die- jedoch von vielen externen Faktoren allem dann lohnt, wenn ein hoher Re- mit Auswirkungen auf die automatisierte zusammenstellen musste, weiß um X Stellen Sie einen Verantwortlichen für die ser Stelle auf Datenmodellierung. Die abhängig. gressionsanteil besteht. Dieser ist Testbarkeit von Java-Softwarelösungen. die damit verbundenen Schwierig- Verwaltung der Testdaten ab (oder ein), Kombinatorik der Äquivalenzklassen
Sie können auch lesen