EXPLORATIVES TESTEN


In agilen Prozessen verändert sich auch der traditionelle
Ansatz die Software zu testen. Mit Hilfe des explorativen
Testens beruft man sich auf das intuitive Testen und lässt
den Testern freie Hand. Entscheidend hierbei ist das
Fachwissen und das IT-Wissen der Tester.

Ideen und Techniken von James A. Whittaker



           Jürgen Volles
           Geschäftsführer
           SPIRIT-TESTING Software & Services GmbH
AGENDA

          Software Testen im allgemeinen
          Arten von Software Tests
          Exploratives Testen
                 Im Kleinen
                 Im Großen
                          Die Tourist Metapher
                          Der Touring Test

          Diskussion


2   Exploratives Testen
SOFTWARE TESTEN

          Jedes System ohne eine enge Feedback-Schleife ist
          ein fehlerbehaftetes System.
          Das „Testen“ ist die Feedback Schleife für die
          Softwareentwicklung
          Daher muss es bereits in der Initialphase, der
          Definition der Anforderungen ein fester Bestandteil
          sein
          Wird auf diese Art und Weise der Testprozess initiiert,
          wird „Testen“ nicht als Flaschenhals wahrgenommen.
          Testen Sie frühzeitig und ständig!
3   Exploratives Testen
ARTEN VON SOFTWARE TEST

          Manuelles ad hoc Testen
          Strukturiertes, manuelles Testen
          Strukturiertes, automatisiertes Testen
          Exploratives Testen




4   Exploratives Testen
EXPLORATIVES TESTEN

          Ziele:
                 Verständnis darüber, wie die Applikation funktioniert, wie sie
                 aussieht, welche Funktionalität sie besitzt
                 Die Software dazu zu bringen, Ihre Grenzen zu überschreiten
                 Fehler zu finden




5   Exploratives Testen
IM KLEINEN

          Hierbei geht es im wesentlichen um die Kombination
          aus Testerfahrung und Know How darüber, wie sich
          die Software zusammensetzt und wie sie ausgeführt
          wird.
          Was muss man beachten:
                 Inputs
                 States
                 Code paths
                 User data
                 Execution environment


6   Exploratives Testen
SCHLUSSFOLGERUNG

          Software Testen wird kompliziert durch die Vielzahl von
          Variationen von Inputs, code pathes, states, gespeicherten Daten
          und auszuführenden Umgebungen
          Egal ob wir einen vorgefertigten Testplan aufbauen oder
          explorativ vorgehen, wir werden niemals alle Kombinationen
          testen können und daher niemals vollständig sein.
          Der Vorteil des explorativen Testens ist, dass wir während der
          Testdurchführung unseren Test planen müssen, Informationen
          sammeln und weiter testen




7   Exploratives Testen
IM GROßEN

          Im Gegensatz zu „Im Kleinen“, wo wir uns um eine
          Vielzahl von Entscheidungen während des Testens für
          einzelne Eingaben beschäftigt haben, geht es „Im
          Großen“ um die Interaktion von Features, den Ablauf
          über die Benutzeroberfläche, die Abarbeitung von
          Geschäftsprozessen, kurz gesagt um die tatsächliche
          Arbeit der Software




8   Exploratives Testen
IM GROßEN

          Die Idee, die sich hinter dem explorativen Testen im Großen
          verbirgt ist, dass sich der Tester bevor er mit dem Testen beginnt
          ein bestimmtes Ziel setzt, welches ihm eine Art Anleitung liefert,
          die Software zu betrachten.

          Am Beispiel eines Touristen lässt sich dies sehr gut erklären.
          Durch diesen Vergleich erhalten wir eine bestimmte Metapher,
          die uns hilft die richtigen Inputs, Daten, Zustände,
          Programmpfade und Umgebungszustände für einen effektiven
          Test zu wählen.




9   Exploratives Testen
TOURIST METAPHER

           Wir besuchen eine große Stadt wie z.B: London

           Fragen:
                  Auf welchem Wege erkunden wir die Stadt? (Auto, zu Fuß, …)
                  Wie sehen wir am meisten von der Stadt?
                  Wie besuchen wir die interessantesten Plätze in kürzester Zeit?
                  Was machen wir, wenn etwas schief geht?
                  Sollen wir einen Fremdenführer buchen oder auf eigene Faust die
                  Stadt erkunden?




10   Exploratives Testen
TOURIST METAPHER

           Ein Tourist wird seinen Besuch ebenfalls planen, er
           wird eine Reihe von Sehenswürdigkeiten und/oder
           bestimmte Theater, usw. auswählen.

           Ebenso wird ein Software Tester bestimmt Features
           der Software auswählen um ein bestimmtes Ziel zu
           erreichen.

           Reiseführer unterteilen oftmals eine Stadt in diverse
           Bezirke, ebenso machen wir das mit unserer Software

11   Exploratives Testen
BEZIRKE

           Business Bezirk
           Historical Bezirk
           Tourist Bezirk
           Entertainment Bezirk
           Hotel Bezirk
           Seedy Bezirk (Zwielichtiger Bezirk)




12   Exploratives Testen
TOURS IM BUSINESS BEZIRK

           The guidebook tour



           The money tour



           The Landmark tour




13   Exploratives Testen
TOURS IM BUSINESS BEZIRK

           The FedEx tour




           The Garbage Collector‘s tour




14   Exploratives Testen
TOURS IM HISTORICAL
     BEZIRK
           The bad-neighborhood tour




           The Museum tour




15   Exploratives Testen
TOURS IM ENTRTAINMENT
     BEZIRK
           The supporting Actor Tour



           The Back alley Tour




16   Exploratives Testen
TOURS IM TOURIST BEZIRK

           The Collector‘s tour



           The Supermodel tour




17   Exploratives Testen
TOURS IM HOTEL BEZIRK

           The Rained-out tour




           The Couch Potato tour




18   Exploratives Testen
TOURS IM SEEDY BEZIRK

           The Saboteur




           The Antisocial tour




19   Exploratives Testen
ZUSAMMENFASSUNG

           Tours liefern eine Struktur für das Testen

           Sie helfen uns auf interessante Art und Weise, die
           Software zu betrachten

           Im Gegensatz zum traditionellen Ansatz einer Feature
           basierten Testfallermittlung erfahren wir mehr über
           den tatsächlichen Zustand der Software und ihrer
           Qualität


20   Exploratives Testen
KONTAKT

     SPIRIT-TESTING Software & Services GmbH
     Karwendelstr. 8b
     82515 Wolfratshausen (München)
     Fon     +49(0)8171 267 644
     Fax     +49(0)8171 267 695

     Standorte:
      • München
      • Darmstadt
      • Nürnberg
      • Braunschweig




21   Exploratives Testen

Creasoft c-Day 2011 - Exploratives Testen

  • 1.
    EXPLORATIVES TESTEN In agilenProzessen verändert sich auch der traditionelle Ansatz die Software zu testen. Mit Hilfe des explorativen Testens beruft man sich auf das intuitive Testen und lässt den Testern freie Hand. Entscheidend hierbei ist das Fachwissen und das IT-Wissen der Tester. Ideen und Techniken von James A. Whittaker Jürgen Volles Geschäftsführer SPIRIT-TESTING Software & Services GmbH
  • 2.
    AGENDA Software Testen im allgemeinen Arten von Software Tests Exploratives Testen Im Kleinen Im Großen Die Tourist Metapher Der Touring Test Diskussion 2 Exploratives Testen
  • 3.
    SOFTWARE TESTEN Jedes System ohne eine enge Feedback-Schleife ist ein fehlerbehaftetes System. Das „Testen“ ist die Feedback Schleife für die Softwareentwicklung Daher muss es bereits in der Initialphase, der Definition der Anforderungen ein fester Bestandteil sein Wird auf diese Art und Weise der Testprozess initiiert, wird „Testen“ nicht als Flaschenhals wahrgenommen. Testen Sie frühzeitig und ständig! 3 Exploratives Testen
  • 4.
    ARTEN VON SOFTWARETEST Manuelles ad hoc Testen Strukturiertes, manuelles Testen Strukturiertes, automatisiertes Testen Exploratives Testen 4 Exploratives Testen
  • 5.
    EXPLORATIVES TESTEN Ziele: Verständnis darüber, wie die Applikation funktioniert, wie sie aussieht, welche Funktionalität sie besitzt Die Software dazu zu bringen, Ihre Grenzen zu überschreiten Fehler zu finden 5 Exploratives Testen
  • 6.
    IM KLEINEN Hierbei geht es im wesentlichen um die Kombination aus Testerfahrung und Know How darüber, wie sich die Software zusammensetzt und wie sie ausgeführt wird. Was muss man beachten: Inputs States Code paths User data Execution environment 6 Exploratives Testen
  • 7.
    SCHLUSSFOLGERUNG Software Testen wird kompliziert durch die Vielzahl von Variationen von Inputs, code pathes, states, gespeicherten Daten und auszuführenden Umgebungen Egal ob wir einen vorgefertigten Testplan aufbauen oder explorativ vorgehen, wir werden niemals alle Kombinationen testen können und daher niemals vollständig sein. Der Vorteil des explorativen Testens ist, dass wir während der Testdurchführung unseren Test planen müssen, Informationen sammeln und weiter testen 7 Exploratives Testen
  • 8.
    IM GROßEN Im Gegensatz zu „Im Kleinen“, wo wir uns um eine Vielzahl von Entscheidungen während des Testens für einzelne Eingaben beschäftigt haben, geht es „Im Großen“ um die Interaktion von Features, den Ablauf über die Benutzeroberfläche, die Abarbeitung von Geschäftsprozessen, kurz gesagt um die tatsächliche Arbeit der Software 8 Exploratives Testen
  • 9.
    IM GROßEN Die Idee, die sich hinter dem explorativen Testen im Großen verbirgt ist, dass sich der Tester bevor er mit dem Testen beginnt ein bestimmtes Ziel setzt, welches ihm eine Art Anleitung liefert, die Software zu betrachten. Am Beispiel eines Touristen lässt sich dies sehr gut erklären. Durch diesen Vergleich erhalten wir eine bestimmte Metapher, die uns hilft die richtigen Inputs, Daten, Zustände, Programmpfade und Umgebungszustände für einen effektiven Test zu wählen. 9 Exploratives Testen
  • 10.
    TOURIST METAPHER Wir besuchen eine große Stadt wie z.B: London Fragen: Auf welchem Wege erkunden wir die Stadt? (Auto, zu Fuß, …) Wie sehen wir am meisten von der Stadt? Wie besuchen wir die interessantesten Plätze in kürzester Zeit? Was machen wir, wenn etwas schief geht? Sollen wir einen Fremdenführer buchen oder auf eigene Faust die Stadt erkunden? 10 Exploratives Testen
  • 11.
    TOURIST METAPHER Ein Tourist wird seinen Besuch ebenfalls planen, er wird eine Reihe von Sehenswürdigkeiten und/oder bestimmte Theater, usw. auswählen. Ebenso wird ein Software Tester bestimmt Features der Software auswählen um ein bestimmtes Ziel zu erreichen. Reiseführer unterteilen oftmals eine Stadt in diverse Bezirke, ebenso machen wir das mit unserer Software 11 Exploratives Testen
  • 12.
    BEZIRKE Business Bezirk Historical Bezirk Tourist Bezirk Entertainment Bezirk Hotel Bezirk Seedy Bezirk (Zwielichtiger Bezirk) 12 Exploratives Testen
  • 13.
    TOURS IM BUSINESSBEZIRK The guidebook tour The money tour The Landmark tour 13 Exploratives Testen
  • 14.
    TOURS IM BUSINESSBEZIRK The FedEx tour The Garbage Collector‘s tour 14 Exploratives Testen
  • 15.
    TOURS IM HISTORICAL BEZIRK The bad-neighborhood tour The Museum tour 15 Exploratives Testen
  • 16.
    TOURS IM ENTRTAINMENT BEZIRK The supporting Actor Tour The Back alley Tour 16 Exploratives Testen
  • 17.
    TOURS IM TOURISTBEZIRK The Collector‘s tour The Supermodel tour 17 Exploratives Testen
  • 18.
    TOURS IM HOTELBEZIRK The Rained-out tour The Couch Potato tour 18 Exploratives Testen
  • 19.
    TOURS IM SEEDYBEZIRK The Saboteur The Antisocial tour 19 Exploratives Testen
  • 20.
    ZUSAMMENFASSUNG Tours liefern eine Struktur für das Testen Sie helfen uns auf interessante Art und Weise, die Software zu betrachten Im Gegensatz zum traditionellen Ansatz einer Feature basierten Testfallermittlung erfahren wir mehr über den tatsächlichen Zustand der Software und ihrer Qualität 20 Exploratives Testen
  • 21.
    KONTAKT SPIRIT-TESTING Software & Services GmbH Karwendelstr. 8b 82515 Wolfratshausen (München) Fon +49(0)8171 267 644 Fax +49(0)8171 267 695 Standorte: • München • Darmstadt • Nürnberg • Braunschweig 21 Exploratives Testen