Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ......

25
1 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: 49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6 oder „Der Passionsweg der Testautomatisierung für mobile und Web-Anwendungen“ Dirk Beinert, Chief Engineer, infoteam Software AG Automatische Systemtests im Auge des Hurrikan Scrum

Transcript of Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ......

Page 1: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

1 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: 49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

oder „Der Passionsweg der Testautomatisierung für mobile und

Web-Anwendungen“

Dirk Beinert, Chief Engineer, infoteam Software AG

Automatische Systemtests im Auge des Hurrikan

Scrum

Page 2: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

2 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Inhalt

• Der gewagte Beginn

• Die glückliche Fügung

• Die späte Erkenntnis

• Die Rettung naht

Page 3: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

3 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Infoteam Software AG

automation healthcare safety life science power

Standorte:

Geschäftsfelder:

Bubenreuth Dortmund Stäfa Bejing

Page 4: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

4 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Infoteam Software AG - BU Industry - BS Automation

SmartPLC OpenPCS

Testautomatisierung Microsoft Team Foundation

Server

Software für Automatisierung

Anforderungsanalyse

Systemdesign

Software-

anforderungen

Softwaredesign

Softwareimplementierung

Softwareintegration

Systemintegration

Inbetriebnahme ,

Wartung

Interaction Design

Page 5: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

5 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Ein Projekt…

Page 6: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

6 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Wozu das ganze?

Page 7: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

7 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Wie? Webtechnologie!

Page 8: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

8 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Mehrfachentwicklung? Nein! -> Google Web Toolkit

JavaScript Java

Scriptsprache Programmiersprache

Läuft nur im Browser Compilierte Applikation

Klartext-Code in Html lesbar Byte-Code nicht analysierbar

Variablen werden pauschal deklariert Typsicher und geschützt (private)

In Ansätzen objektorientiert Objektorientierte Architektur

Page 9: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

9 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Entwicklungsprozess? Unbedingt Agil!!!

Daily Scrum (Infoteam intern)

Iteration (30 Tage)

Weekly Status(Kunde, Infoteam)

Sprint Backlog Release

Prioritäten

Continuous

Integration

Übergabetest

(Infoteam)

LH, CRQs

Page 10: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

10 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Testen??? Diese vielen Browser und Smartphones???

Stand 2011:

Firefox wird von Ranorex momentan bis Version 3.6 vollständig unterstützt.

Mit Ranorex 3.1 wird dann auch Firefox 4&5 unterstützt.

Das Chrome-Plugin befindet sich momentan in Entwicklung und

wird mit Version 3.2 (~ Q4) ausgeliefert werden.

Eine Safari-Unterstützung ist momentan nicht

geplant.

Quelle: http://www.browser-statistik.de

Page 11: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

11 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Die guten Nachrichten:

• Ranorex hat ihre eigenen Ankündigungen übertroffen

• Modularisierung von Recordings möglich

• Alle Browser unterstützen (schon 2011) Canvas

• Durch Databinding können UI-Elemente der verschiedenen

Browser im Repository zur Laufzeit ausgewählt werden

Page 12: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

12 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Ranorex 3.0

Page 13: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

13 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Testsuiten, Testcases, Teststeps

Testsuite GebäudeView

1.TestCase a für Requirement x

1. Setup zur Herstellung von stabiler Ausgangslage (Fixed Fixture)

2. Teststep 1 (Menü-Auswahl, Klicken, Drag&Drop, Parameter,…)

3. Teststep 2

4. Teststep 3

5. Teardown zum Aufräumen

2.Testcase b für Requirement y

1. Setup

2. Teststep 1

3. Teststep …

4. …

Page 14: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

14 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Was sollen mir diese Tests sagen???

Page 15: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

15 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Wir haben wenig Zeit! Mach dass die Tests laufen!

• Neuer Mitarbeiter wird an die Tests gesetzt

• Versucht Sinn und Funktion der Tests zu verstehen

• Versucht einen Nacht-Testlauf auszuwerten

• Versteht die aufgetretenen Fehler nicht

• Startet die Tests im Debugger

• „Behebt“ Fehler in der Reihenfolge ihres Auftretens

Verschleiert Sinn der Tests

Verliert Unmengen von Zeit

Page 16: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

16 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Div/Tag-Html-Urwald

div[3]/div[2]/div/div/div[2]/table/tbody/tr[2]/td/div/div[4]/div/div/div[3]/table[2]/…

div[3]/div[2]/div/div/div[2]/table/tbody/tr[2]/.../div[@innertext='projektierte Kanäle']

Page 17: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

17 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Wie schreibt man eigentlich Tests? So nicht!

Page 18: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

18 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Probleme: Abhängigkeiten, fehlende Transparenz, …

///Header: Voraussetzung/Beschreibung fehlt

Teststep-Funktion: Eindeutige Nomenklatur fehlt

{

}

Eingangsprüfungen/ Abbruchbedingungen fehlen

Reporting zum Inhalt der Funktion fehlt

Sprünge in gleich-hierarchische Teststep-Funktionen

Individuelle Suchalgorithmen

Unspezifische Fehlerbeschreibung

Page 19: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

19 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Verlasse den Ort stets genauso gut (oder besser) als du

ihn vorgefunden hast (Pfadfinderprinzip, Clean Code)

///Header: Voraussetzung + Beschreibung der (wenigen) Schritte

Nomenklatur: TS_<view>_<Aktion>_<Prüfung>

{

}

Eingangsprüfungen + Abbruchbedingungen

Abschlussprüfungen + Warnungen

Page 20: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

20 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Reporting

{

}

Eingangsprüfungen + Abbruchbedingungen

Abschlussprüfungen + Warnungen

Ankündigung der Vorbedingungen und Aktionen

Reporting des Soll-Endzustands

try-catch: Abfangen von nicht gefundenen oder inaktiven Controls

Page 21: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

21 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Wiederverwendbarkeit

///Header: Voraussetzung + Beschreibung der (wenigen) Schritte

Nomenklatur: TS_<view>_<Aktion>_<Prüfung>

{

}

[Attribute zur deklarativen Festlegung des Einsatz-Kontextes]

Page 22: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

22 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Framework aufbohren

Compilezeit:

Testfallerstellung

Laufzeit:

Testfallauswertung

Precondition 2

Postcondition n

Postcondition 1 Precondtion ok?

Postcondtion ok?

Page 23: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

23 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Am Ziel?

• Ranorex-AddIn für Precompiler zur logischen Prüfung

• Klare Vorgaben (Template) für Testfunktionen

• Reporting nicht dem Zufall und dem Fleiß des

Testentwicklers überlassen

• Teststeps modular kombinierbar machen

• Trennung von Action- und Check-Teststeps

• Sprachabhängigkeiten vermeiden

• GUI-IDs verwenden statt div/tag Ketten zu verwalten:

Page 24: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

24 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Aufräumen, Absichern

Quelle: t-online 4.6.13 Quelle: N24 13.6.13

Page 25: Automatische Systemtests im Auge des Hurrikan · • Ranorex hat ihre eigenen Ankündigungen ... Drag&Drop, Parameter,…) 3. Teststep 2 4. Teststep 3 5. Teardown zum Aufräumen 2.Testcase

25 © 2013 infoteam Software AG | Am Bauhof 9 | D-91088 Bubenreuth | Telefon: +49 (0) 9131 78 00 - 0 | Fax: +49 (0) 9131 78 00 - 50 | www.infoteam.de | V 2.6

ASQF TestingDay Franken 2013

Contact

infoteam Software AG

Am Bauhof 9

91088 Bubenreuth

Germany

Phone: +49 (0) 9131 78 000

Fax: +49 (0) 9131 78 0050

[email protected]

www.infoteam.de

www.infoteam.de