Softwaretest Das Testen von Software mit professionellen Methoden

Manage­ment-Zusam­men­fas­sung die­ses Bei­trags:
Der Soft­ware­test / das → Tes­ten von Soft­ware beschäf­tigt sich mit der Über­prü­fung von → Qua­li­tät von Soft­ware bei der → Soft­ware­ent­wick­lung.
Die­ser Bei­trag stellt eini­ge Ele­men­te des Soft­ware­tests dar.

Das Tes­ten von Soft­ware hat einen bedeu­ten­den zeit­li­chen wie finan­zi­el­len Anteil bei der Erstel­lung von Soft­ware. Ohne Tes­ten wird in der Regel kei­ne Soft­ware zum Ein­satz kom­men, denn nur durch das Tes­ten kann die gewünsch­te oder gefor­der­te Qua­li­tät gewähr­leis­tet und nach­ge­wie­sen wer­den. Die­se Erkennt­nis ist nicht neu, den­noch wird das Tes­ten von Soft­ware in der Pra­xis häu­fig unge­nü­gend oder feh­ler­haft durch­ge­führt. Die dar­aus resul­tie­ren­den Schä­den sind ärger­lich und kön­nen zu erheb­li­chen Kos­ten und Auf­wän­den füh­ren. Im Extrem­fall kön­nen man­gel­haf­te Soft­ware-Sys­te­me exis­tenz­be­dro­hend sein. Daher soll­te ein sys­te­ma­ti­scher, ange­pass­ter Soft­ware­test in jedem Soft­ware­ent­wick­lungs­pro­jekt durch­ge­führt werden.

1. Einleitung und Grundlagen

In die­sem Kapi­tel wer­den zunächst eini­ge Defi­ni­tio­nen zum Soft­ware­test vor­ge­stellt, eben­so wie ein → Test­pro­zess, die → Test­stu­fen und die Testarten.

1.1 Definition

In der Wiki­pe­dia steht zum Soft­ware­test /#Wiki-Softwaretest/:
“Ein Soft­ware­test prüft und bewer­tet Soft­ware auf Erfül­lung der für ihren Ein­satz defi­nier­ten Anfor­de­run­gen und misst ihre Qua­li­tät. Die gewon­ne­nen Erkennt­nis­se wer­den zur Erken­nung und Behe­bung von Soft­ware­feh­lern genutzt. Tests wäh­rend der Soft­ware­ent­wick­lung die­nen dazu, die Soft­ware mög­lichst feh­ler­frei in Betrieb zu nehmen.”

In Abbil­dung 1.1 sind die bei­den wesent­li­chen Aspek­te des Soft­ware­tests dargestellt:

  • Der Qua­li­täts­nach­weis und 
  • die Feh­ler­fin­dung.
Die beiden Aspekte des Softwaretests, (C) Peterjohann Consulting, 2020-2024

Abbil­dung 1.1: Die bei­den Aspek­te des Softwaretests

Mit dem Qua­li­täts­nach­weis kann gezeigt wer­den, wie gut die Soft­ware vor­ge­ge­be­nen Qua­li­täts­kri­te­ri­en genügt. Häu­fig ist der Qua­li­täts­nach­weis mit der Abnah­me / den → Abnah­me­kri­te­ri­en für die Soft­ware verbunden.

Sprach­li­ches:
In die­sem Bei­trag wird bevor­zugt der Begriff “Soft­ware­test” benutzt. Das “Soft­ware­tes­ten” oder das “Tes­ten von Soft­ware” kön­nen aber glei­cher­ma­ßen ver­wen­det werden.

Zum Soft­ware­test gibt es Nor­men und Stan­dards, die auch die Basis die­ses Bei­trags und der gän­gi­gen Lite­ra­tur zum Soft­ware­test bilden:

  • Das → ISTQB (Inter­na­tio­nal Soft­ware Test­ing Qua­li­fi­ca­ti­ons Board) /ISTQB/ zer­ti­fi­ziert Tes­ter im Soft­ware­test. Dar­über wer­den Vor­ge­hens­wei­sen für den Soft­ware­test all­ge­mein fest­ge­legt. Zudem sind über das frei zugäng­li­che → Glos­sar des ISTQB /IST­QB-Glos­s­ar/ eini­ge Fach­be­grif­fe in meh­re­ren Spra­chen definiert
  • Der ISO/IEC/IEEE Inter­na­tio­nal → Stan­dard 29119 “Sys­tems and → Soft­ware Engi­nee­ring — Soft­ware­test” beschreibt wesent­li­che Aspek­te des Softwaretests 

1.2 Der Testprozess

Der → Test­pro­zess beginnt immer mit der Test­pla­nung. Dann fol­gen die Test­ana­ly­se und das Test­de­sign, anschlie­ßend kommt es zur → Test­rea­li­sie­rung und zur → Test­durch­füh­rung. Eine Test­aus­wer­tung mit dem → Test­be­richt schließt den Test­zy­klus ab.

Ein Test­pro­zess ist in Abbil­dung 1.2 dargestellt.

Der fundamentale Testprozess nach Böhm, (C) Peterjohann Consulting, 2020-2024

Abbil­dung 1.2: Der fun­da­men­ta­le Test­pro­zess nach Böhm /Böhm13/

Anmer­kung:
Der deut­sche Begriff “→ Test­plan” bezieht sich auf den kon­kre­ten Aus­füh­rungs­plan (mit zeit­li­chen Vor­ga­ben) und heißt in der eng­li­schen Über­set­zung “Test sche­du­le”. Der eng­li­sche Begriff “Test plan” bezeich­net das “→ Test­kon­zept”, wel­ches einen über­ge­ord­ne­ten Rah­men vor­gibt. Lei­der wer­den in der Pra­xis der “Test­plan” und der “Test plan” nicht immer rich­tig ver­wen­det. Hin­zu kommt, dass die Test­pla­nung (deutsch) laut IST­QB-Glos­sar /IST­QB-Glos­s­ar/ die Ver­fei­ne­rung und Anpas­sung des Test­kon­zepts bezeichnet.

1.3 Teststufen

In der Regel wer­den Tests nach dem Vor­ge­hen bei der Soft­ware­er­stel­lung durch­ge­führt: Dabei wer­den je nach Betrach­tungs­ebe­ne unter­schied­li­che Test­stu­fen ver­wen­det, die nach­ein­an­der durch­ge­führt wer­den.

Beim ISTQB wird die → Test­stu­fe fol­gen­der­ma­ßen defi­niert /IST­QB-Glos­s­ar/:
“Eine spe­zi­fi­sche Instan­zi­ie­rung eines Test­pro­zes­ses.“

Sehr häu­fig kom­men vier Test­stu­fen zum Ein­satz, die sich am → V‑Modell ori­en­tie­ren. Die­se vier Test­stu­fen sind (→ Abbil­dun­gen 1.3 und 1.4):

  1. → Abnah­me­test (engl. accep­tance test­ing): Die obers­te Test­stu­fe, die dazu dient, ein Gesamt­sys­tem abzu­neh­men und damit von der Ent­wick­lung in den Regel­be­trieb überzugehen
  2. Sys­tem­test (engl. sys­tem test­ing): Die zwei­t­obers­te Test­stu­fe, die dazu dient, kom­plet­te Soft­ware­sys­te­me zu testen
  3. Inte­gra­ti­ons­test (engl. inte­gra­ti­on test­ing): Die zweit­un­ters­te Test­stu­fe, die dazu dient, meh­re­re Soft­ware­kom­po­nen­ten im Ver­bund / Zusam­men­spiel zu testen
  4. Kom­po­nen­ten­test (engl. com­po­nent test­ing): Die unters­te Test­stu­fe, die dazu dient, ein­zel­ne Soft­ware­kom­po­nen­ten zu tes­ten, um so sicher­zu­ge­hen, dass die­se für sich funktionieren
Die vier Teststufen nach ISTQB, (C) Peterjohann Consulting, 2021-2024

Abbil­dung 1.3: Die vier Test­stu­fen nach ISTQB

In der Abbil­dung 1.4 sind die Defi­ni­tio­nen nach ISTQB fest­ge­hal­ten /IST­QB-Glos­s­ar/.

Die vier Teststufen nach ISTQB: Definitionen, (C) Peterjohann Consulting, 2021-2024

Abbil­dung 1.4: Die vier Test­stu­fen nach ISTQB: Definitionen

Anmer­kung:
Die vier Test­stu­fen fin­den sich visua­li­siert in der → Test­py­ra­mi­de und teil­wei­se in den → agi­len Test­qua­dran­ten wieder.

1.4 Testarten

Nach ISTQB fin­den sich fol­gen­de vier grund­le­gen­den Test­ar­ten (Abbil­dung 1.5):

  1. Funk­tio­na­le Tests: Hier­bei wer­den die Funk­tio­nen der Soft­ware getes­tet, so wie sie in den Anfor­de­run­gen oder den Geschäfts­pro­zes­sen beschrie­ben sind
  2. Nicht­funk­tio­na­le Tests: Die­se Tests wer­den durch­ge­führt, um die nicht-funk­tio­na­len Anfor­de­run­gen (→ NFAs) zu → veri­fi­zie­ren
  3. Struk­tur­be­zo­ge­ne Tests: Hier­mit wer­den in ers­ter Linie Abfol­gen / Flüs­se getes­tet, die den typi­schen Umgang mit der Soft­ware widerspiegeln
  4. Ände­rungs­be­zo­ge­ne Tests: Die ände­rungs­be­zo­ge­nen Tests die­nen dazu, bereits getes­te­te Soft­ware noch­mals zu tes­ten. Die­se Tests wer­den typi­scher­wei­se zu einer Releas­e­frei­ga­be durchgeführt
Grundlegende Testarten nach ISTQB, (C) Peterjohann Consulting, 2020-2024

Abbil­dung 1.5: Grund­le­gen­de Test­ar­ten nach ISTQB

1.5 Die Qualitätsmerkmale von Software nach ISO 25010

Die → ISO 25010 (“Sys­tem und Soft­ware-Engi­nee­ring – Qua­li­täts­kri­te­ri­en und Bewer­tung von Sys­tem und Soft­ware­pro­duk­ten (SQua­RE) – Qua­li­täts­mo­dell und Leit­li­ni­en”) benennt Qua­li­täts­merk­ma­le, die beim Soft­ware­test beach­tet wer­den müs­sen (Abbil­dung 1.6).

Qualitätsmerkmale der ISO 25010 - Produktqualität, tabellarische Übersicht mit allen Kriterien, (C) Peterjohann Consulting, 2019-2024

Abbil­dung 1.6: Qua­li­täts­merk­ma­le der ISO 25010:2011 — Pro­dukt­qua­li­tät, tabel­la­ri­sche Über­sicht mit allen Kriterien

Die Qua­li­täts­merk­ma­le der 25010:2011 sind vor allem bei der Erfas­sung von nicht-funk­tio­na­len Anfor­de­run­gen im → Requi­re­ments Engi­nee­ring nütz­lich, da sie einen Rah­men vor­ge­ben: Wenn zu allen 31 Kri­te­ri­en → nicht-funk­tio­na­le Anfor­de­run­gen vor­lie­gen, so ist dies ein Indiz für eine umfas­sen­de Betrachtung.

1.6 Rollen beim Softwaretest

Die Umset­zung des Soft­ware­tests ver­teilt sich übli­cher­wei­se auf meh­re­re Rol­len (Abbil­dung 1.7):

  1. Test­ma­na­ger (Test­lei­ter): Die­se Rol­len legt den Rah­men für den Soft­ware­test fest
  2. Test­de­si­gner: Der Test­de­si­gner gestal­tet den Rah­men des Soft­ware­tests aus, er ver­fei­nert die Vor­ga­ben des Testmanagers
  3. Test­au­to­ma­ti­sie­rer: Falls Test­au­to­ma­ti­sie­rung ver­wen­det wird, so muss es eine Rol­le geben, die sich um die Test­au­to­ma­ti­sie­rung kümmert
  4. Test­ad­mi­nis­tra­tor: Die (tech­ni­sche) Abspei­che­rung der Test­ar­te­fak­te kann sehr auf­wen­dig wer­den. Ein Test­ad­mi­nis­tra­tor kann die­se Auf­ga­ben übernehmen
  5. Tes­ter: Der Tes­ter führt den Test letzt­lich durch
Rollen im Softwaretest nach ISTQB, (C) Peterjohann Consulting, 2020-2024

Abbil­dung 1.7: Rol­len im Soft­ware­test nach ISTQB

Es müs­sen je nach Grö­ße des Pro­jekts nicht immer alle Rol­len besetzt sein. Jedoch sind die Rol­le des Test­ma­na­gers und die Rol­le des Tes­ters immer vor­zu­se­hen. Gene­rell soll­ten alle Rol­len­in­ha­ber ent­spre­chend ihrer Auf­ga­ben geschult oder zer­ti­fi­ziert sein.

1.7 Die Themen des Softwaretests nach SWEBOK

Im SWEBOK (Gui­de to the Soft­ware Engi­nee­ring Body of Know­ledge) /SWEBOK24/ wer­den inge­samt 24 The­men zum Soft­ware­test benannt, die bei einem pro­fes­sio­nel­len Soft­ware Engi­nee­ring berück­sich­tigt wer­den müs­sen (Abbil­dung 1.8). Die­se The­men wer­den acht The­men­grup­pen zuge­ord­net, aus denen wie­der­um ein (all­ge­mei­nes) Vor­ge­hen abge­lei­tet wer­den kann.

Themengebiete des Softwaretests nach SWEBOK, (C) Peterjohann Consulting, 2023-2024

Abbil­dung 1.8: The­men­ge­bie­te des Soft­ware­tests nach SWEBOK /SWEBOK24/

2. Statische und dynamische Tests

Gene­rell wird zwi­schen sta­ti­schen und dyna­mi­schen Tests unter­schie­den (Abbil­dung 2.1). Die sta­ti­schen Tests unter­su­chen den Source Code, ohne dass die ent­ste­hen­de Soft­ware aus­ge­führt wird. Bei den dyna­mi­schen Tests wird die Soft­ware aus­ge­führt und die Reak­ti­on der Soft­ware über­prüft. Viel­fach wer­den die sta­ti­schen Tests “über­se­hen” — den­noch gehö­ren sie zu den Softwaretests.

Statische und dynamische Tests, (C) Peterjohann Consulting, 2022-2024

Abbil­dung 2.1: Sta­ti­sche und dyna­mi­sche Tests

Die sta­ti­schen und dyna­mi­schen Tests kön­nen einem → V‑Modell zuge­ord­net wer­den (Abbil­dung 2.2). Wäh­rend die sta­ti­schen Tests dem lin­ken Zweig zuge­ord­net wer­den, fal­len die dyna­mi­schen Tests auf den rech­ten Zweig.

Statische und dynamische Tests im V-Modell, (C) Peterjohann Consulting, 2022-2024

Abbil­dung 2.2: Sta­ti­sche und dyna­mi­sche Tests im V‑Modell

2.1 Dynamische Testverfahren nach ISO 29119

Die ISO 29119–4:2021 /ISO29119/ defi­niert fol­gen­de drei dyna­mi­sche → Test­ver­fah­ren (Test Tech­ni­ques) (Abbil­dung 2.3):

  1. Spe­zifi­ka­ti­ons­ba­sier­te → Test­ver­fah­ren, auch Black-Box-Test­ver­fah­ren: Es wer­den Tests ohne Kennt­nis­se der inne­ren Struk­tur genutzt
  2. Struk­tur­ba­sier­te Test­ver­fah­ren, auch White-Box-Test­ver­fah­ren: Es wer­den Tests auf Basis der inne­ren Struk­tur genutzt
  3. Erfah­rungs­ba­sier­te Test­ver­fah­ren: Es wer­den Tests ver­wen­det, die (rein) auf dem Wis­sen und den Erkennt­nis­sen der Tes­ter basieren
Testverfahren nach ISO 29119, (C) Peterjohann Consulting, 2022-2024

Abbil­dung 2.3: Test­ver­fah­ren nach ISO 29119

Ver­tie­fen­de Infor­ma­tio­nen zu den Black-Box- und White-Box-Test­ver­fah­ren fin­den sich auf der Web­sei­te → Black-Box- und White-Box-Test.

Anmer­kung:
Der Begriff Test bezieht sich auf die Test­durch­füh­rung, Test­ver­fah­ren auf die Erstel­lung der Tests (Defi­ni­ti­on, Ent­wurf, Spe­zi­fi­ka­ti­on der Test­da­ten) und der ver­al­te­te Begriff Test­ent­wurfs­ver­fah­ren auf den Ent­wurf der Tests. 

3. Aspekte des Softwaretests

Hier wer­den eini­ge Aspek­te des Tes­tens von Soft­ware genau­er betrachtet.

3.1 Automatisiertes Testen

Gene­rell kön­nen Tests manu­ell oder auto­ma­ti­siert durch­ge­führt werden.

In der Wiki­pe­dia steht zur Test­au­to­ma­ti­sie­rung /#Wiki-Testautomatisierung/:
“Unter Test­au­to­ma­ti­sie­rung (auch Test­au­to­ma­ti­on) ist die Auto­ma­ti­sie­rung von Akti­vi­tä­ten im Test zu ver­ste­hen, sowohl beim Soft­ware­test als auch beim auto­ma­ti­sier­ten Test von Hard­ware, dem Hardwaretest.”

Das ISTQB ver­steht unter Test­au­to­ma­ti­sie­rung /Baumgartner21/:
“Ein­satz von Soft­ware­werk­zeu­gen zur Durch­füh­rung oder Unter­stüt­zung von Test­ak­ti­vi­tä­ten, z.B. → Test­ma­nage­ment, Test­ent­wurf, Test­aus­füh­rung und Sol­l/Ist-Ver­gleich.”

Softwaretest - Von manuell bis automatisiert, (C) Peterjohann Consulting, 2020-2024

Abbil­dung 3.1: Soft­ware­test — Von manu­ell bis automatisiert

In der Wiki­pe­dia wird die Test­au­to­ma­ti­sie­rung in fünf Teil­ge­bie­te unter­teilt (Abbil­dung 3.2):

  • Test­fal­lerstel­lung
    • Test­da­ten­er­stel­lung
    • Test­skript­er­stel­lung
  • Test­durch­füh­rung
  • Test­aus­wer­tung
  • Test­do­ku­men­ta­ti­on
  • Test­ad­mi­nis­tra­ti­on
Teilbereiche des automatisierten Softwaretests, (C) Peterjohann Consulting, 2020-2024

Abbil­dung 3.2: Teil­be­rei­che des auto­ma­ti­sier­ten Soft­ware­tests (nach /#Wiki-Testautomatisierung/)

3.2 Aufwand und Kosten des Testens

Der → Auf­wand und die Kos­ten des Tes­tens müs­sen sehr früh­zei­tig bestimmt wer­den. Im Ide­al­fall wird die Soft­ware so ent­wi­ckelt, dass der Test­auf­wand und die Test­kos­ten mini­mal sind und gleich­zei­tig die ent­ste­hen­de Soft­ware­qua­li­tät hoch ist.

Ein typi­scher Ansatz zur Ermitt­lung des Test­auf­wands und der Test­kos­ten für den Soft­ware­test berücksichtigt …

  • die → Auf­wän­de zur Erstel­lung des Testkonzepts,
  • die Auf­wän­de zur Erstel­lung der Testfälle,
  • die Auf­wän­de zur Durch­füh­rung der Tests auf Basis der Testfälle,
  • die Anzahl der geplan­ten Test­durch­füh­run­gen (auf Basis des Releaseplans),
  • die Kos­ten für die (tech­ni­sche) Test­um­ge­bung und
  • die Auf­wän­de zum beglei­ten­den Testmanagement.

Bei der Bestim­mung des Test­auf­wands und der Test­kos­ten muss immer beach­tet wer­den, dass es zu einem neu­en Gesamt­test kom­men kann, bei dem alle Test­fäl­le durch­ge­führt werden. 

3.3 Einige Spielregeln beim Testen

Es gibt eini­ge Regeln, die beim Tes­ten beach­tet wer­den soll­ten.
Häu­fig sind fol­gen­de Regeln zu finden:

  • “Der Ent­wick­ler ist nie­mals der Tes­ter”: Ein Ent­wick­ler soll­te nie­mals sei­nen eige­nen Code abschlie­ßend tes­ten und frei­ge­ben dür­fen, ein → Vier-Augen-Prin­zip ist beim Tes­ten notwendig
  • “Tes­ten kos­tet — Zeit und Geld”: Für das Tes­ten muss ein — teil­wei­se erheb­li­cher — Auf­wand an Zeit und Geld berück­sich­tigt wer­den. Bei schlecht-auf­ge­setz­ten Soft­ware­ent­wick­lungs­pro­jek­ten kann der Soft­ware­test bis zu 50 % der → Dau­er und bis zu´50 % der Kos­ten verursachen
  • “Tes­ten beginnt vor → Pro­jekt­start”: Eine Test­pla­nung soll­te schon vor Pro­jekt­start in der Initia­li­sie­rungs- oder Defi­ni­ti­ons­pha­se eines Pro­jekts erfol­gen, umso die Belan­ge des Tes­tens vor­ab zu berück­sich­ti­gen und die Kos­ten über­schau­bar zu hal­ten. Wenn bei­spiels­wei­se bereits bei der Ent­wick­lung der → Soft­ware­ar­chi­tek­tur auto­ma­ti­sier­tes Tes­ten ein­ge­plant wird, so kön­nen hier­mit mas­si­ve Kos­ten­re­duk­tio­nen erzielt werden
  • “Tren­nung von Test­fall­do­ku­men­ta­ti­on und Test­ergeb­nis­do­ku­men­ta­ti­on”: Die Test­fäl­le soll­ten all­ge­mein auf­ge­baut und doku­men­tiert wer­den, sodass sie (jeder­zeit) repro­du­ziert wer­den kön­nen. Die Test­ergeb­nis­se ent­ste­hen, wenn ein Tes­ter zu einem defi­nier­ten → Zeit­punkt auf Basis der Test­fäl­le / Test­fall­spe­zi­fi­ka­tio­nen die Tests durch­führt und die Test­ergeb­nis­se in Test­pro­to­kol­len dokumentiert
  • “Tren­nung von Test­durch­füh­rung / Feh­ler­fin­dung und Feh­ler­ma­nage­ment”: Das Feh­ler­ma­nage­ment (Defect Manage­ment) soll­te getrennt von der Test­durch­füh­rung erfol­gen, ansons­ten kann ein “unkon­trol­lier­tes Rein­pras­seln” von Feh­ler­mel­dun­gen die Soft­ware­ent­wick­lung ausbremsen
  • “Ohne Requi­re­ments / Anfor­de­run­gen kei­ne Tests”: Tests — ober­halb der Kom­po­nen­ten­ebe­ne — müs­sen immer gegen Anfor­de­run­gen durch­ge­führt werden

3.4 Zur Kritikalität der Tests

Test­fäl­le kön­nen eine unter­schied­li­che Kri­ti­k­ali­tät auf­wei­sen: Wenn das zugrun­de­lie­gen­de Sze­na­rio beson­ders kri­tisch ist, so ist der dazu­ge­hö­ri­ge → Test­fall eben­falls kri­tisch. Daher ist es hilf­reich, ein Attri­but “Kri­ti­k­ali­tät” bei der → Test­fall­spe­zi­fi­ka­ti­on zu ver­wen­den, wel­ches idea­ler­wei­se den Wert aus der dazu­ge­hö­ri­gen Anfor­de­rung übernimmt.

Fach­li­che Tests, die als beson­ders kri­tisch gel­ten, soll­ten durch meh­re­re Test­ar­ten abge­si­chert werden.

4. Normen und Standards zum Softwaretest

Zum Soft­ware­test gibt es den ISO/IEC/IEEE Inter­na­tio­nal Stan­dard 29119 “Sys­tems and Soft­ware Engi­nee­ring — Soft­ware­test” /ISO29119/, der die Aspek­te des Soft­ware­tests beschreibt. Er umfasst in sei­ner Ursprungs­fas­sung (aus dem Jahr 2014) fol­gen­de fünf Bestandteile:

  • 29119–1:2022: Kon­zep­te und Defi­ni­tio­nen (Con­cepts & Defi­ni­ti­ons) mit 47 Seiten
  • 29119–2:2021: → Test­pro­zes­se (Test Pro­ces­ses) mit 54 Seiten
  • 29119–3:2021: Test­do­ku­men­ta­ti­on (Test Docu­men­ta­ti­on) mit 84 Seiten
  • 29119–4:2021: Test­ver­fah­ren (Test Tech­ni­ques) mit 147 Seiten
  • 29119–5:2016: Key­word-Dri­ven Test­ing (Key­word Dri­ven Test­ing) mit 54 Seiten

Anmer­kung:
Statt Test­ver­fah­ren ist teil­wei­se der Begriff Test­tech­ni­ken als Über­set­zung von Test Tech­ni­ques zu fin­den, Test­ver­fah­ren ist jedoch der rich­ti­ge Begriff.

Ergän­zend hin­zu­ge­kom­men sind:

  • TR 29119–6:2021: Gui­de­lines for the use of ISO/IEC/IEEE 29119 (all parts) in agi­le projects
  • TR 29119–11:2020: Gui­de­lines on the test­ing of AI-based systems
  • TR 29119–13:2022: Using the ISO/IEC/IEEE 29119 series in the test­ing of bio­me­tric systems

Der Stan­dard 29119 ersetzt ver­schie­de­ne Stan­dards zum Soft­ware­test, die bis zum ers­ten Erschei­nen der ISO 29119 im Jahr 2013 gül­tig waren. Dazu gehö­ren beispielsweise:

  • IEEE 829: Test Documentation
  • IEEE 1008: Unit Testing
  • BS 7925–1: Voca­bu­la­ry of Terms in Soft­ware Testing
  • BS 7925–2: Soft­ware Com­po­nent Test­ing Standard

Der Stan­dard ISO 24765 “Sys­tems und Soft­ware Engi­nee­ring” /ISO24765/ lie­fert eine Über­sicht mit über 4.600 Begrif­fen zum Sys­tems und Soft­ware Engi­nee­ring und ent­hält auch Begrif­fe zum Softwaretest.

5. Häufig gestellte Fragen und Antworten (FAQ) zum Testen von Software

Eini­ge Fra­gen zum Tes­ten von Soft­ware wer­den häu­fig gestellt – die­se wer­den hier wiedergegeben.

  • F: Muss man immer Soft­ware­tests bei der Soft­ware­ent­wick­lung durch­füh­ren?
    A: Ja. Ohne Tests wür­den die → Feh­ler erst im Ein­satz erkannt wer­den — und die Behe­bung die­ser Feh­ler wäre dann auf­wen­dig und teuer.
  • F: Rei­chen rein tex­tu­el­le Beschrei­bun­gen für die Beschrei­bung von Tests aus?
    A: In der Regel kaum. Genau wie bei der Ent­wick­lung von Anfor­de­run­gen soll­ten Über­sich­ten, Tabel­len und wei­te­re Gra­fi­ken ver­wen­det werden.
  • F: Müs­sen Tes­ter eine for­ma­le Qua­li­fi­ka­ti­on besit­zen?
    A: Mei­ner Mei­nung nach ja. Es soll­te zumin­dest das Foun­da­ti­on Level des Cer­ti­fied Tes­ter (CTFL – Cer­ti­fied Tes­ter Foun­da­ti­on Level) nach ISTQB erwor­ben wer­den, bevor man Soft­ware­test­ing betreibt.
  • F: Wel­che Tools soll­ten für die Durch­füh­rung von Tests ver­wen­det wer­den?
    A: Bei klei­nen → Vor­ha­ben kön­nen ein­fa­che Tabel­len-Tools aus­rei­chend sein. Gene­rell emp­fiehlt es sich aber, daten­bank­ge­stütz­te Test-Tools zu verwenden. 

Haben Sie noch wei­te­re Fra­gen oder möch­ten Sie Ergän­zun­gen an der FAQ vor­neh­men? Am bes­ten schrei­ben Sie mir hier­zu eine E‑Mail an: kontakt@peterjohann-consulting.de.

A. Präsentationen, Literatur und Weblinks

A.1 Präsentationen

  • -

A.2 Literatur

Dem Tes­ten kommt in der Soft­ware­ent­wick­lung eine enor­me Bedeu­tung zu. Aus der Viel­zahl der Bücher zu die­sem Gebiet ist hier eine Aus­wahl wiedergegeben.

  1. /Adzic15/ Goj­ko Adzic, David Evans, Tom Roden: Fif­ty Quick Ide­as to Impro­ve Your User Tests, Neu­ri Con­sul­ting, Lon­don 2015, ISBN 978–0‑9930881–1‑7
  2. /Albrecht18/ Janet Albrecht-Zölch: Test­da­ten und Test­da­ten­ma­nage­ment. Vor­ge­hen, Metho­den und Pra­xis, dpunkt, Hei­del­berg 2018, ISBN 978–3‑86490–486‑8
  3. /Bath14a/ Gra­ham Bath, Judy McK­ay: The Soft­ware Test Engineer’s Hand­book: A Stu­dy Gui­de for the ISTQB Test Ana­lyst and Tech­ni­cal Test Ana­lyst Advan­ced Level Cer­ti­fi­ca­tes 2012, Rocky Nook, San­ta Bar­ba­ra, Cali­for­nia 2nd edi­ti­on 2014, ISBN 978–1‑937538–44‑6
  4. /Bath14b/ Gra­ham Bath, Erik Van Veenend­aal: Impro­ving the Test Pro­cess: Imple­men­ting Impro­ve­ment and Chan­ge – A Stu­dy Gui­de for the ISTQB Expert Level Modu­le, Rocky Nook, San­ta Bar­ba­ra, Cali­for­nia 2014, ISBN 978–1‑933952–82‑6
  5. /Bath15/ Gra­ham Bath, Judy McK­ay: Pra­xis­wis­sen Soft­ware­test – Test Ana­lyst und Tech­ni­cal Test Ana­lyst: Aus- und Wei­ter­bil­dung zum Cer­ti­fied Tes­ter – Advan­ced Level nach IST­QB-Stan­dard, dpunkt, Hei­del­berg 3. Auf­la­ge 2015, ISBN 978–3‑86490–137‑9
  6. /Baumgartner17/ Man­fred Baum­gart­ner, Mar­tin Klonk, Hel­mut Pich­ler, Richard Seidl, Sieg­fried Tanc­zos: Agi­le Test­ing: Der agi­le Weg zur Qua­li­tät, Han­ser, Mün­chen 2. Auf­la­ge 2017, ISBN 978–3‑446–45292‑3
  7. /Baumgartner21/ Man­fred Baum­gart­ner, Ste­fan Gwihs, Richard Seidl, Tho­mas Stei­rerc, Marc-Flo­ri­an Wend­land: Basis­wis­sen Test­au­to­ma­ti­sie­rung. Aus- und Wei­ter­bil­dung zum ISTQB Advan­ced Level Spe­cia­list – Cer­ti­fied Test Auto­ma­ti­on Engi­neer, dpunkt, Hei­del­berg 3. Auf­la­ge 2021, ISBN 978–3‑86490–675‑6
  8. /Black08/ Rex Black: Advan­ced Soft­ware Test­ing – Vol. 1: Gui­de to the ISTQB Advan­ced Cer­ti­fi­ca­ti­on as an Advan­ced Test Ana­lyst, Rocky Nook, San­ta Bar­ba­ra, Cali­for­nia 2008, ISBN 978–1‑933952–19‑2
  9. /Black09/ Rex Black: Mana­ging the Test­ing Pro­cess: Prac­ti­cal Tools and Tech­ni­ques for Mana­ging Hard­ware and Soft­ware Test­ing, John Wiley & Sons, Hobo­ken, New Jer­sey 3rd Edi­ti­on 2009, ISBN 978–0‑470–40415‑7
  10. /Black09/ Rex Black, Eric van Ven­nend­al, Doro­thy Gra­ham: Foun­da­ti­ons of Soft­ware Test­ing: ISTQB Cer­ti­fi­ca­ti­on, Cen­ga­ge Lear­ning EMEA, Ando­ver, Gre­at Bri­tain, 3rd Edi­ti­on 2012, ISBN 978–1‑4080–4405‑6
  11. /Black14/ Rex Black: Advan­ced Soft­ware Test­ing – Vol. 2: Gui­de to the ISTQB Advan­ced Cer­ti­fi­ca­ti­on as an Advan­ced Test Mana­ger, Rocky Nook, San­ta Bar­ba­ra, Cali­for­nia 2nd Edi­ti­on 2014, ISBN 978–1‑937538–50‑7
  12. /Black15a/ Rex Black, Jamie L. Mit­chell: Advan­ced Soft­ware Test­ing – Vol. 3: Gui­de to the ISTQB Advan­ced Cer­ti­fi­ca­ti­on as an Advan­ced Tech­ni­cal Test Ana­lyst, Rocky Nook, San­ta Bar­ba­ra, Cali­for­nia 2nd Edi­ti­on 2015, ISBN 978–1‑937538–64‑4
  13. /Black15b/ Rex Black, Debra Frie­den­berg: The Expert Test Mana­ger: Gui­de to the ISTQB Expert Level Cer­ti­fi­ca­ti­on, Rocky Nook, San­ta Bar­ba­ra, Cali­for­nia 2015, ISBN 978–1‑933952–94‑9
  14. /Böhm13/ Rolf Böhm: Cer­ti­fied Tes­ter (Foun­da­ti­on Level). Der umfas­sen­de Ein­stieg, Böhm Bil­dungs­me­di­en, Köl­li­ken, Schweiz 2013, ISBN 978–3‑9523884–2‑6
  15. /Bucsics15/ Tho­mas Buc­sics, Man­fred Baum­gart­ner, Richard Seidl, Ste­fan Gwihs: Basis­wis­sen Test­au­to­ma­ti­sie­rung: Kon­zep­te, Metho­den und Tech­ni­ken, dpunkt, Hei­del­berg 2. Auf­la­ge 2015, ISBN 978–3‑86490–194‑2
  16. /Crispin08/ Lisa Crispin, Janet Gre­go­ry: Agi­le Test­ing: A Prac­ti­cal Gui­de for Tes­ters and Agi­le → Teams, Addi­son-Wes­ley Long­man, Ams­ter­dam 2008, ISBN 978–0‑321–53446‑4
  17. /Crispin14/ Lisa Crispin, Janet Gre­go­ry: More Agi­le Test­ing: Lear­ning Jour­neys for the Who­le Team, Addi­son-Wes­ley Long­man, Ams­ter­dam 2014, ISBN 978–0‑321–96705‑3
  18. /Daigl16/ Mat­thi­as Daigl, Rolf Glunz: ISO 29119 – Die Soft­ware­test-Nor­men ver­ste­hen und anwen­den, dpunkt, Hei­del­berg 2016, ISBN 978–3‑86490–237‑6
  19. /Daigl24/ Mat­thi­as Daigl, Rolf Glunz: ISO 29119 – Die Soft­ware­test-Nor­men ver­ste­hen und anwen­den, dpunkt, Hei­del­berg 2. Auf­la­ge 2024, ISBN 978–3‑98889–011‑5
  20. /Daigl22/ Mat­thi­as Daigl, René Roh­ner: Key­word-Dri­ven Test­ing. Grund­la­ge für effi­zi­en­te Test­spe­zi­fi­ka­ti­on und Auto­ma­ti­sie­rung, dpunkt, Hei­del­berg 2022, ISBN 978–3‑86490–570‑4
  21. /Fieber21/ Flo­ri­an Fie­ber, Marc-Flo­ri­an Wend­land: Basis­wis­sen Abnah­me­test: Aus- und Wei­ter­bil­dung zum ISTQB Foun­da­ti­on Level Spe­cia­list – Accep­tance Test­ing, dpunkt, Hei­del­berg 2021, ISBN 978–3‑86490–829‑3
  22. /Franz15/ Klaus Franz: Hand­buch zum Tes­ten von Web- und Mobi­le-Apps, Sprin­ger Vie­w­eg, Wies­ba­den 2. Auf­la­ge 2015, ISBN 978–3‑662–44027‑8
  23. /Franz18/ Klaus Franz, Tan­ja Trem­mel, Ecke­hard Kru­se: Basis­wis­sen Test­da­ten­ma­nage­ment. Aus- und Wei­ter­bil­dung zum Test Data Spe­cia­list – Cer­ti­fied Tes­ter Foun­da­ti­on Level nach GTB, ISBN 978–3‑86490–558‑2
  24. /Gärtner13/ Mar­kus Gärt­ner: ATDD in der Pra­xis: Eine prak­ti­sche Ein­füh­rung in die Akzep­tanz­test-getrie­be­ne Soft­ware­ent­wick­lung mit Cucum­ber, Sele­ni­um und Fit­Nesse, dpunkt, Hei­del­berg 2013, ISBN 978–3‑86490–046‑4
  25. /Grünfelder13/ Ste­phan Grün­fel­der: Soft­ware-Test für Embedded Sys­tems: Ein Pra­xis­hand­buch für Ent­wick­ler, Tes­ter und tech­ni­sche → Pro­jekt­lei­ter, dpunkt, Hei­del­berg 2013, 978–3‑89864–799‑1
  26. /Hellerer12/ Heinz Hel­le­rer: → Soft Skills für Soft­ware­tes­ter und Test­ma­na­ger: Kom­mu­ni­ka­ti­on im Team, Team­füh­rung, Stress- und Kon­flikt­ma­nage­ment, dpunkt, Hei­del­berg 2012, ISBN 978–3‑89864–831‑8
  27. /Hendrick14/ Eli­sa­beth Hendrick­son: Explo­re It!: Wie Soft­ware­ent­wick­ler und Tes­ter mit explo­ra­ti­vem Tes­ten Risi­ken redu­zie­ren und Feh­ler auf­de­cken, dpunkt, Hei­del­berg 2014, ISBN 978–3‑86490–093‑8
  28. /Langr14/ Jeff Langr: Test­ge­trie­be­ne Ent­wick­lung mit C++: Sau­be­rer Code. Bes­se­re Pro­duk­te, dpunkt, Hei­del­berg 2014, ISBN 978–3‑86490–189‑8
  29. /Langr15/ Jeff Langr, Andy Hunt, Dave Tho­mas: Prag­ma­tic Unit Test­ing in Java 8 with Junit, Prag­ma­tic Pro­gramm­ers, Ral­eigh, North Caro­li­na 2015, ISBN 978–1‑941222–59‑1
  30. /Liggesmeyer09/ Peter Lig­ges­mey­er: Soft­ware-Qua­li­tät: Tes­ten, Ana­ly­sie­ren und Veri­fi­zie­ren von Soft­ware, Spek­trum Aka­de­mi­scher Ver­lag, Hei­del­berg 2. Auf­la­ge 2009, ISBN 978–3‑8274–2056‑5
  31. /Linz13/ Tilo Linz: Tes­ten in → Scrum-Pro­jek­ten: Leit­fa­den für Soft­ware­qua­li­tät in der agi­len Welt, dpunkt, Hei­del­berg 2013, ISBN 978–3‑89864–799‑1
  32. /Linz14/ Tilo Linz: Test­ing in Scrum: A Gui­de for Soft­ware Qua­li­ty Assu­rance in the Agi­le World, Rocky Nook, San­ta Bar­ba­ra, Cali­for­nia 2014, ISBN 978–1‑937538–39‑2
  33. /Linz16/ Tilo Linz: Tes­ten in Scrum-Pro­jek­ten. Leit­fa­den für Soft­ware­qua­li­tät in der agi­len Welt. Aus- und Wei­ter­bil­dung zum ISTQB Cer­ti­fied Agi­le Tes­ter – Foun­da­ti­on Exten­si­on, dpunkt, Hei­del­berg 2. Auf­la­ge 2016, ISBN 978–3‑86490–414‑1
  34. /Linz23/ Tilo Linz: Tes­ten in agi­len Pro­jek­ten. Metho­den und Tech­ni­ken für Soft­ware­qua­li­tät in der agi­len Welt – Aus- und Wei­ter­bil­dung zum ISTQB Cer­ti­fied Tes­ter: Agi­le Tes­ter, Agi­le Tech­ni­cal Tes­ter, Agi­le Test Lea­der­ship at Sca­le, dpunkt, Hei­del­berg 3. Auf­la­ge 2023, ISBN 978–3‑86490–961‑0
  35. /Roßner10/ Tho­mas Roß­ner, Chris­ti­an Bran­des, Hel­mut Götz, Mario Win­ter: Basis­wis­sen Modell­ba­sier­ter Test, dpunkt, Hei­del­berg 2010, ISBN 978–3‑89864–589‑8
  36. /Schlich22/ Maud Schlich: Soft­ware­tes­ten nach ISTQB für Dum­mies, Wiley-VCH, Wein­heim 2. Auf­la­ge 2022, ISBN 978–3‑527–72019‑4
  37. /Schlich24/ Maud Schlich: Soft­ware­tes­ten nach ISTQB CTFL 4.0 für Dum­mies, Wiley-VCH, Wein­heim, 2024, ISBN 978–3‑527–72165‑8
  38. /Schmerler20/ Ste­fan Schmer­ler: Soft­ware­test in der Pra­xis. Grund­la­gen, Metho­den und Tech­no­lo­gien, epu­b­li, Ber­lin 2020, ISBN 978–3‑7531–2481‑0
  39. /Sneed11/ Har­ry M. Sneed, Man­fred Baum­gart­ner, Richard Seidl: Der Sys­tem­test: Von den Anfor­de­run­gen zum Qua­li­täts­nach­weis, Han­ser, Mün­chen 3. Auf­la­ge 2011, ISBN 978–3‑446–42692‑4
  40. /Spillner12/ Andre­as Spill­ner, Tilo Linz: Basis­wis­sen Soft­ware­test: Aus- und Wei­ter­bil­dung zum Cer­ti­fied Tes­ter – Foun­da­ti­on Level nach IST­QB-Stan­dard, dpunkt, Hei­del­berg 5. Auf­la­ge 2012, ISBN 978–3‑86490–024‑2
  41. /Spillner14a/ Andre­as Spill­ner, Tho­mas Roß­ner, Mario Win­ter, Tilo Linz: Pra­xis­wis­sen Soft­ware­test – Test­ma­nage­ment, Aus- und Wei­ter­bil­dung zum Cer­ti­fied Tes­ter – Advan­ced Level nach IST­QB-Stan­dard, dpunkt, Hei­del­berg 4. Auf­la­ge 2014, ISBN 978–3‑86490–052‑5
  42. /Spillner14b/ Andre­as Spill­ner, Tho­mas Roß­ner, Hans Schä­fer: Soft­ware Test­ing Foun­da­ti­ons: A Stu­dy Gui­de for the Cer­ti­fied Tes­ter Exam, Rocky Nook, San­ta Bar­ba­ra, Cali­for­nia 4th Edi­ti­on 2014, ISBN 978–1‑937538–42‑2
  43. /Spillner17/ Andre­as Spill­ner, Mario Win­ter, Andrej Pietsch­ker: Test, Ana­ly­se und Veri­fi­ka­ti­on von Soft­ware – ges­tern, heu­te, mor­gen, dpunkt, Hei­del­berg 2017, ISBN 978–3‑86490–470‑7
  44. /Spillner19/ Andre­as Spill­ner, Tilo Linz: Basis­wis­sen Soft­ware­test: Aus- und Wei­ter­bil­dung zum Cer­ti­fied Tes­ter – Foun­da­ti­on Level nach IST­QB-Stan­dard, dpunkt, Hei­del­berg 6. Auf­la­ge 2019, ISBN 978–3‑86490–583‑4
  45. /Spillner21/ Andre­as Spill­ner, Tilo Linz: Soft­ware Test­ing Foun­da­ti­ons: A Stu­dy Gui­de for the Cer­ti­fied Tes­ter Exam, dpunkt, Hei­del­berg 5th Edi­ti­on 2021, ISBN 978–3‑86490–834‑7
  46. /Spillner23/ Andre­as Spill­ner: Sys­te­ma­ti­sches Tes­ten von Soft­ware, dpunkt, Hei­del­berg 4. Auf­la­ge 2023, Arti­kel-Nr. 077.95725, kei­ne ISBN
  47. /Spillner24/ Andre­as Spill­ner, Tilo Linz: Basis­wis­sen Soft­ware­test. Aus- und Wei­ter­bil­dung zum Cer­ti­fied Tes­ter – Foun­da­ti­on Level nach IST­QB-Stan­dard, dpunkt, Hei­del­berg 7. Auf­la­ge 2024, ISBN 978–3‑98889–005‑4
  48. /Stauffer13/ Her­bert Stauf­fer, Beat Hon­eg­ger, Hans­pe­ter Gisin: Tes­ten von Data-Warehouse- und Busi­ness-Intel­li­gence-Sys­te­men: Vor­ge­hen, Metho­den und Kon­zep­te, dpunkt, Hei­del­berg 2013, ISBN 978–3‑86490–072‑3
  49. /SWEBOK14/ Pierre Bour­que, Richard E. Fair­ley: Gui­de to the Soft­ware Engi­nee­ring Body of Know­ledge, IEEE Com­pu­ter Socie­ty Press, Los Ala­mi­tos, Cali­for­nia 3rd Edi­ti­on 2014, ISBN 978–0‑7695–5166‑1
  50. /SWEBOK24/ Hiro­no­ri Washi­za­ki: Gui­de to the Soft­ware Engi­nee­ring Body of Know­ledge, IEEE Com­pu­ter Socie­ty Press, Los Ala­mi­tos, Cali­for­nia 4th Edi­ti­on 2024, ISBN offen
  51. /Thaller02/ Georg Erwin Thal­ler: Soft­ware-Test: Veri­fi­ka­ti­on und Vali­da­ti­on, Hei­se, Han­no­ver 2. Auf­la­ge 2002, ISBN 978–3‑88229–198‑8
  52. /Vigenschow10/ Uwe Vigen­schow: Tes­ten von Soft­ware und Embedded Sys­tems: Pro­fes­sio­nel­les Vor­ge­hen mit modell­ba­sier­ten und objekt­ori­en­tier­ten Ansät­zen, dpunkt, Hei­del­berg 2. Auf­la­ge 2010, ISBN 978–3‑89864–638‑3
  53. /Wallmüller11/ Ernest Wall­mül­ler: Soft­ware Qua­li­ty Engi­nee­ring: Ein Leit­fa­den für bes­se­re Soft­ware-Qua­li­tät, Han­ser, Mün­chen 3. Auf­la­ge 2011, ISBN 978–3‑446–40405‑2
  54. /Wallmüller14/ Ernest Wall­mül­ler: → Risi­ko­ma­nage­ment für IT- und Soft­ware-Pro­jek­te: Ein Leit­fa­den für die Umset­zung in der Pra­xis, Han­ser, Mün­chen 2. Auf­la­ge 2014, ISBN 978–3‑446–43477‑6
  55. /Winter12/ Mario Win­ter, Moh­sen Eks­sir-Mon­fared, Har­ry M. Sneed, Richard Seidl, Lars Bor­ner: Der Inte­gra­ti­ons­test: Von Ent­wurf und Archi­tek­tur zur Kom­po­nen­ten- und Sys­tem­in­te­gra­ti­on, Han­ser, Mün­chen 2012, ISBN 978–3‑446–42564‑4
  56. /Winter16/ Mario Win­ter, Tho­mas Roß­ner, Chris­ti­an Bran­des, Hel­mut Götz: Basis­wis­sen modell­ba­sier­ter Test. Aus- und Wei­ter­bil­dung zum ISTQB Foun­da­ti­on Level – Cer­ti­fied Model-Based Tes­ter, dpunkt, Hei­del­berg 2. Auf­la­ge 2016, ISBN 978–3‑86490–297‑0
  57. /Witte19/ Frank Wit­te: Test­ma­nage­ment und Soft­ware­test: Theo­re­ti­sche Grund­la­gen und prak­ti­sche Umset­zung, Sprin­ger Vie­w­eg, Wies­ba­den 2. Auf­la­ge 2019, ISBN 978–3‑658–25086‑7
  58. /Witte20/ Frank Wit­te: Stra­te­gie, Pla­nung und Orga­ni­sa­ti­on von Test­pro­zes­sen. Basis für erfolg­rei­che Pro­jekt­ab­wick­lung im Soft­ware­test, Sprin­ger Vie­w­eg, Wies­ba­den 2020, ISBN 978–3‑658–31227‑5

Fol­gen­de Web­links lie­fern wei­te­re hilf­rei­che Infor­ma­tio­nen zum Softwaretest:

Legen­de zu den Weblinks
/ / Ver­weis auf eine Web­site (all­ge­mein)
/*/ Ver­weis auf eine Web­site, die als Ergän­zung zu einem Buch dient
/#/ Ver­weis auf ein ein­zel­nes The­ma auf einer Website
/#V/ Ver­weis auf ein Video auf einer Website