ALM Talk Coded UI-Testing

Werbung
Coded UI Testing
Automatisiertes UI Testing
Mark Allibone, 18.04.2013, #2
Eine klassische Applikations Architektur
Grafische Oberfläche
Business Logik
Datenzugriff (Datenbank, Cloud, etc)
Mark Allibone, 18.04.2013, #3
Testarten
Grafische Oberfläche
Business Logik
Datenzugriff (Datenbank, Cloud, etc)
Mark Allibone, 18.04.2013, #4
Automatisiertes Testen im Vergleich
«Recorded UI Testing»
«Coded UI Testing»
• X / Y Koordinaten Aufnahme
• Erkennung von UI Control Typen
• Namenserkennung von UI Elements
• X / Y Koordinaten Aufnahme inkl. Skalierung
und Ebenen
Mark Allibone, 18.04.2013, #5
Coded UI Test – Einsatzmöglichkeiten
 Funktionale Anforderungen
 Darstellungsparameter
 Performance
× UX/Design Testen
Mark Allibone, 18.04.2013, #6
Fokusierung rein auf UI bei UI Tests
• Lange Initialisierung von Business Logik
• Lange Datenzugriffe via Netzwerk, Festplatte, etc.
• Komplexe Business Logik Alghorithmen
• Redundanz mit Integrationstests
Mark Allibone, 18.04.2013, #7
Fokussierter Automated UI Test
Automated UI Test
Grafische Oberfläche
Fake Business Logik
Business Logik
Datenzugriff (Datenbank, Cloud, etc)
Mark Allibone, 18.04.2013, #8
Vorteile von Coded UI Tests
•
•
•
•
•
•
•
•
Regressionstests
Reduzierung manueller Tests
Erhöhung der Testabdeckung
Automatische Testausführung
Softwareverhalten auf unterschiedlichen Plattformen und Browser
Wiederverwendbarkeit für Performancetests
Langzeittests
…
Mark Allibone, 18.04.2013, #9
Microsoft Coded UI Test
1
Was wird unterstützt
2
Knowhow / Skills
• Welche Frameworks und Plattformen Continuous
• value
Skills, Development und Technologie
delivery
werden unterstützt.
• Welche Anforderungen müssen in der
Architektur berücksichtigt werden.
Mark Allibone, 18.04.2013, #10
3
Tools
• Software Anforderungen
und Empfehlungen
Was wird unterstützt – Plattform & Frameworks
• Plattformunterstützung
 http://msdn.microsoft.com/en-us/library/dd380742.aspx
 Windows 7, Windows 8, …
× Windows XP, …
 WPF, Windows Forms 2.0, …
× Windows Store, …
Mark Allibone, 18.04.2013, #11
Was wird unterstützt – Architekturaufbau
• Custom controls
• Animationen
Mark Allibone, 18.04.2013, #12
Knowhow/ Skills
• Skills in C# .Net oder VB .Net inkl. dem MS Test Framework
• Programmierkenntnisse bei Testern von Vorteil
Mark Allibone, 18.04.2013, #13
Tools
• Visual Studio 2010/2012
 Premium
 Ultimate
• TFS 2010/2012 (nicht zwingend, jedoch von Vorteil)
Mark Allibone, 18.04.2013, #14
Coded UI Test – Zahlenrechner Demo
• Wie erstellt man ein Coded UI Test Projekt
• Was macht das Coded UI Framework
• Wiederverwendbarkeit von erstellten Coded UI Tests
Mark Allibone, 18.04.2013, #15
Fazit Demo
• Ergänzung Unit Tests / Integration Tests
• Möglichkeit der Wiederverwendbarkeit
• Coded UI Tests müssen in Visual Studio implementiert werden
• Continous Integration inklusive UI Layer mit TFS möglich
Mark Allibone, 18.04.2013, #16
Weitere Testszenarien
• Komplexe Algorithmen
• Edgecases
• Hohe Anzahl unterschiedlicher Parameter
Mark Allibone, 18.04.2013, #17
Parametrisiertes Coded UI Testing
• Keine Anpassung des bestehenden generierten Testcodes
 Zusätzliche Parameter durch externe Datenquelle
• Testparameter via Import
 CSV, Excel, XML, Test Cases TFS, SQL Express
Mark Allibone, 18.04.2013, #18
Parametrisiertes Coded UI Test - Demo
• Verwenden von externen Daten in Test
• Zugriff auf einzelne Parameter in Test
• Einfache Erweiterung der Parameter
• Durchführung des Tests für alle gegebenen Parameter
Mark Allibone, 18.04.2013, #19
Fazit Demo
• Einfache Erweiterung bestehender Tests
• Fehlerreport bezieht sich auf die einzelnen Parameter und nicht auf die Testmethode
• Kein Visual Studio oder Programmiererfahrung für die Erweiterung nötig
Mark Allibone, 18.04.2013, #20
Automatisierungen im Vergleich
«Recorded UI Testing»
«Coded UI Tests»
• Keine Modularität gegeben
• Modularisierung der Testabläufe
• Keine Wiederverwendbarkeit der einzelnen
Schritte möglich
• Wiederverwendbarkeit von Modulen
• Änderungen bedeuten komplette
Neuaufnahme
• Änderungen können an einzelnen Modulen
vorgenommen werden
• Manuelle Resultatverifizierung
• Vollständig automatisierbar
(MTM Action Recordings)
Mark Allibone, 18.04.2013, #21
Action Recording Modularisieren - Demo
• Wiederverwenden von MTM Action Recordings auf TFS
• Konvertierung eines MTM Action Recordings in einen Coded UI Test
• Ergänzung des konvertierten Action Recordings mit Coded UI Test Validierung
• Auswertung des Tests
Mark Allibone, 18.04.2013, #22
Fazit Demo
• Einfacher Import von MTM Action Recordings
• Testschritte können modularisiert werden
• Einzelne Testschritte (Module) können in anderen Coded UI Tests wiederverwendet werden
• Einfache Integration in den Continous Integration Zyklus möglich
Mark Allibone, 18.04.2013, #23
Weitere Punkte…
• Anpassen von Coded UI Tests wegen UI Änderungen
• Import von Coded UI Tests in den Microsoft Test Manager
• Integration Custom Controls
• Test von Web UIs (z.B. HTML5)
Mark Allibone, 18.04.2013, #24
Ausblick - Mobile Solutions
Mark Allibone, 18.04.2013, #25
noser engineering ag
rudolf-diesel-strasse 3, 8404 winterthur
+41 52 234 56 11 phone
[email protected]
www.noser.com
Herunterladen