Testautomatisierung mit
CodedUI (für
Fortgeschrittende)




Ihre Software effizienter entwickelt   © AIT GmbH & Co. KG
Wir unterstützen Sie…



                                                  Nico Orschel
                                                  Nico.Orschel@aitgmbh.de
                                                  http://www.aitgmbh.de




Beratung                               Entwicklung
Agile ALM und TFS                      Dienstleister für individuelle
.NET und Architektur                   Lösungen mit .NET und Azure


Ihre Software effizienter entwickelt                               © AIT GmbH & Co. KG
Agenda
Einführung                                      Testerstellung
CodedUI Basics                                  Anwendungsoptimierung
Workflow                                        Diagnose

                                        1       Struktur(en)
                                                                               2
Verifikation                                    Ausführung
API                                             Integration
Visuelle Prüfung                                Build Prozesse


                                        3       Lab Management
                                                                               4
 Ihre Software effizienter entwickelt       3                           © AIT GmbH & Co. KG
PPT-Prinzip

                                       People



                           Tools

                                           Process




Ihre Software effizienter entwickelt       4         © AIT GmbH & Co. KG
Menschen und Prozesse
QS                                             Entwickler
Welche Aufgaben im Team                        Welche Aufgaben im Team
übernehmen die Tester?                         übernimmt der Entwickler?




Zusammenspiel
Wer ist verantwortlich für die Qualität?




Ihre Software effizienter entwickelt       5                          © AIT GmbH & Co. KG
Technologie
Testautomatisierung                        UI Testing
Wie ist CodedUI einzuordnen?               Welche Technologien werden
Welche Werkzeuge stehen mir zur            unterstützt?
Verfügung?



Framework
Wie werden die Technologien
eingebunden?




Ihre Software effizienter entwickelt   6                         © AIT GmbH & Co. KG
Unterstützte Plattformen
       Technology                  Support            Comment
   IE 8-10                      Yes            Older IEs are not
                                               supported anymore
   WinForms 2.0,                Yes            3rd party controls could
   WPF 3                                       be a problem
   Chrome, Opera,               Yes (Upd. 1)   Latest version via
   Safari                                      Selenium Adapter
   Silverlight                  No             Unofficial support for
                                               Silverlight v4/v5
   Flash, Java                  No
   Windows Win32 /              Partially      May work with known
   MFC                                         issues
   Sharepoint                   Yes (Upd. 1)   2007 + 2010

   Vollständige Liste siehe http://msdn.microsoft.com/en-
   us/library/vstudio/dd380742.aspx

Ihre Software effizienter entwickelt            7                         © AIT GmbH & Co. KG
UITest Architecture
       Test Runner                                    Coded UI Test                          My UI


                                                                  Code                       Action
              Interpreter
                                                                Generation                  Invoker




                                    Filter/              API
                                                                                 Property
                                  Aggregation
               Recorder                                        Playback          Provider
                                     Rules




                            Technology Abstraction Layer

     Web Plug-ins                       Rich Client Plug-ins
                                                                          3rd Party Plug-ins
    (MSHTML/DOM)                            (UIA/MSAA)

Ihre Software effizienter entwickelt            8                                 © AIT GmbH & Co. KG
Projektstart
                                            Unit Tests
                                            Was sind die Besonderheiten von
                                            Unit Tests?
                                            <ProjektName>.Tests.Unit



Integration Tests                           UI Tests
Was sind die Besonderheiten von             Was sind die Besonderheiten von
Integration Tests?                          UI Tests?
<ProjektName>.Tests.Integration             Benutzeroberflächen
                                            <ProjektName>.Tests.UI



 Ihre Software effizienter entwickelt   9                          © AIT GmbH & Co. KG
Testerstellung
UI Technology
Was ist für die verschiedenen UI
Technologien zu beachten?




UIA                                          MSAA




 Ihre Software effizienter entwickelt   10          © AIT GmbH & Co. KG
Struktur und Aufbau
Standardisierung                             UIMaps
Was sollte typischerweise                    Was gibt es bei UIMaps zu
standardsisiert werden?                      beachten?




                                             Methoden
                                             Wie sollten Methoden strukturiert
                                             sein?




 Ihre Software effizienter entwickelt   11                           © AIT GmbH & Co. KG
Demo
 MSAA + UIA Schnittstellen
 Diagnose




Ihre Software effizienter entwickelt   © AIT GmbH & Co. KG
Demo
 Multiple UIMaps /
 Grid Handling




Ihre Software effizienter entwickelt   © AIT GmbH & Co. KG
Automatische Prüfung
API
Was sind Use-Cases für die
Prüfung per API?




                                             Visuell
                                             Was sind Use-Cases für eine
                                             visuelle Prüfung?




 Ihre Software effizienter entwickelt   14                           © AIT GmbH & Co. KG
Demo
 AccessibleDescription




Ihre Software effizienter entwickelt   © AIT GmbH & Co. KG
Demo
 Visual Verificication




Ihre Software effizienter entwickelt   © AIT GmbH & Co. KG
Demo
 Code Marker




Ihre Software effizienter entwickelt   © AIT GmbH & Co. KG
Ausführung
Umgebungen
Wo können Tests ausgeführt
werden?




 Ihre Software effizienter entwickelt   18   © AIT GmbH & Co. KG
Ausführung




Ihre Software effizienter entwickelt   19   © AIT GmbH & Co. KG
Zusammenfassung




Ihre Software effizienter entwickelt   © AIT GmbH & Co. KG
Weitere Informationen
      http://en.wikipedia.org/wiki/Microsoft_Active_Accessibili   Nico Orschel
       ty
                                                                   Nico.Orschel@aitgmbh.de
      http://en.wikipedia.org/wiki/Microsoft_UI_Automation
      http://acccheck.codeplex.com/
      http://blogs.msdn.com/b/mathew_aniyan/archive/2010/
       02/11/content-index-for-coded-ui-test.aspx
      http://blogs.msdn.com/b/mathew_aniyan/archive/2011/
       03/28/visual-studio-ui-test-extensibility-scenarios-amp-    http://www.aitgmbh.de
       guiding-principles.aspx
                                                                   http://blog.aitgmbh.de
      http://www.microsoft.com/en-
       us/download/details.aspx?id=8442
      http://codemarkers.codeplex.com/




    Ihre Software effizienter entwickelt                                   © AIT GmbH & Co. KG

Testautomatisierung mit CodedUI für Fortgeschrittende

  • 1.
    Testautomatisierung mit CodedUI (für Fortgeschrittende) IhreSoftware effizienter entwickelt © AIT GmbH & Co. KG
  • 2.
    Wir unterstützen Sie… Nico Orschel Nico.Orschel@aitgmbh.de http://www.aitgmbh.de Beratung Entwicklung Agile ALM und TFS Dienstleister für individuelle .NET und Architektur Lösungen mit .NET und Azure Ihre Software effizienter entwickelt © AIT GmbH & Co. KG
  • 3.
    Agenda Einführung Testerstellung CodedUI Basics Anwendungsoptimierung Workflow Diagnose 1 Struktur(en) 2 Verifikation Ausführung API Integration Visuelle Prüfung Build Prozesse 3 Lab Management 4 Ihre Software effizienter entwickelt 3 © AIT GmbH & Co. KG
  • 4.
    PPT-Prinzip People Tools Process Ihre Software effizienter entwickelt 4 © AIT GmbH & Co. KG
  • 5.
    Menschen und Prozesse QS Entwickler Welche Aufgaben im Team Welche Aufgaben im Team übernehmen die Tester? übernimmt der Entwickler? Zusammenspiel Wer ist verantwortlich für die Qualität? Ihre Software effizienter entwickelt 5 © AIT GmbH & Co. KG
  • 6.
    Technologie Testautomatisierung UI Testing Wie ist CodedUI einzuordnen? Welche Technologien werden Welche Werkzeuge stehen mir zur unterstützt? Verfügung? Framework Wie werden die Technologien eingebunden? Ihre Software effizienter entwickelt 6 © AIT GmbH & Co. KG
  • 7.
    Unterstützte Plattformen Technology Support Comment IE 8-10 Yes Older IEs are not supported anymore WinForms 2.0, Yes 3rd party controls could WPF 3 be a problem Chrome, Opera, Yes (Upd. 1) Latest version via Safari Selenium Adapter Silverlight No Unofficial support for Silverlight v4/v5 Flash, Java No Windows Win32 / Partially May work with known MFC issues Sharepoint Yes (Upd. 1) 2007 + 2010 Vollständige Liste siehe http://msdn.microsoft.com/en- us/library/vstudio/dd380742.aspx Ihre Software effizienter entwickelt 7 © AIT GmbH & Co. KG
  • 8.
    UITest Architecture Test Runner Coded UI Test My UI Code Action Interpreter Generation Invoker Filter/ API Property Aggregation Recorder Playback Provider Rules Technology Abstraction Layer Web Plug-ins Rich Client Plug-ins 3rd Party Plug-ins (MSHTML/DOM) (UIA/MSAA) Ihre Software effizienter entwickelt 8 © AIT GmbH & Co. KG
  • 9.
    Projektstart Unit Tests Was sind die Besonderheiten von Unit Tests? <ProjektName>.Tests.Unit Integration Tests UI Tests Was sind die Besonderheiten von Was sind die Besonderheiten von Integration Tests? UI Tests? <ProjektName>.Tests.Integration Benutzeroberflächen <ProjektName>.Tests.UI Ihre Software effizienter entwickelt 9 © AIT GmbH & Co. KG
  • 10.
    Testerstellung UI Technology Was istfür die verschiedenen UI Technologien zu beachten? UIA MSAA Ihre Software effizienter entwickelt 10 © AIT GmbH & Co. KG
  • 11.
    Struktur und Aufbau Standardisierung UIMaps Was sollte typischerweise Was gibt es bei UIMaps zu standardsisiert werden? beachten? Methoden Wie sollten Methoden strukturiert sein? Ihre Software effizienter entwickelt 11 © AIT GmbH & Co. KG
  • 12.
    Demo MSAA +UIA Schnittstellen Diagnose Ihre Software effizienter entwickelt © AIT GmbH & Co. KG
  • 13.
    Demo Multiple UIMaps/ Grid Handling Ihre Software effizienter entwickelt © AIT GmbH & Co. KG
  • 14.
    Automatische Prüfung API Was sindUse-Cases für die Prüfung per API? Visuell Was sind Use-Cases für eine visuelle Prüfung? Ihre Software effizienter entwickelt 14 © AIT GmbH & Co. KG
  • 15.
    Demo AccessibleDescription Ihre Softwareeffizienter entwickelt © AIT GmbH & Co. KG
  • 16.
    Demo Visual Verificication IhreSoftware effizienter entwickelt © AIT GmbH & Co. KG
  • 17.
    Demo Code Marker IhreSoftware effizienter entwickelt © AIT GmbH & Co. KG
  • 18.
    Ausführung Umgebungen Wo können Testsausgeführt werden? Ihre Software effizienter entwickelt 18 © AIT GmbH & Co. KG
  • 19.
    Ausführung Ihre Software effizienterentwickelt 19 © AIT GmbH & Co. KG
  • 20.
    Zusammenfassung Ihre Software effizienterentwickelt © AIT GmbH & Co. KG
  • 21.
    Weitere Informationen  http://en.wikipedia.org/wiki/Microsoft_Active_Accessibili Nico Orschel ty Nico.Orschel@aitgmbh.de  http://en.wikipedia.org/wiki/Microsoft_UI_Automation  http://acccheck.codeplex.com/  http://blogs.msdn.com/b/mathew_aniyan/archive/2010/ 02/11/content-index-for-coded-ui-test.aspx  http://blogs.msdn.com/b/mathew_aniyan/archive/2011/ 03/28/visual-studio-ui-test-extensibility-scenarios-amp- http://www.aitgmbh.de guiding-principles.aspx http://blog.aitgmbh.de  http://www.microsoft.com/en- us/download/details.aspx?id=8442  http://codemarkers.codeplex.com/ Ihre Software effizienter entwickelt © AIT GmbH & Co. KG