© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Testmanagement mit VS 2013
Nico Orschel, MVP ALM, AIT GmbH & Co. KG
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Aktuelle Herausforderungen
Visual Studio Familie
Testmanagement
Manuelle Testausführung
Agenda
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Continous Delivery
Parallele Releases
Agile Prozesse
Zusammenarbeit mit Kunden und Zulieferern
Multi Plattform (Tablets, Smartphones, andere)
Cloud
Testumgebungen, Testautomatisierung
Herausforderungen
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
E X T E N S I B L E A P I s
Version Control
Build Automation
CustomizableProcesses
RequirementsManagement
Test CaseManagement
ProjectManagement
End-to-EndTraceability
Lab ManagementAnalytics
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Wie ordnet sich TCM in die TFS/VS Welt ein?
Microsoft Testmanager (MTM)
• Testmanagement
•Man. Testausführung (Formal+Agile)
• Testumgebungsmanagement
Visual Studio (Testautomatisierung)
• Code
• Autom. Testausführung
(DefaultLabTemplate.XAML)*
Lab Management (Testumgebungen)
• SCVMM
• Standard
© AIT GmbH & Co. KGIhre Software effizienter entwickelt 10
Die Qual der Wahl: MTM vs. Test Hub
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
TCM – Hierarchischer Aufbau
Team Projekt
Test Plan
Release 1Test Plan Release 2 …
Test Suite 1Test Suite
2…
Test
Daten
Test
Steps
Shared
Steps
Test 1
Test
DatenTest
Steps
Test 2
Konfiguratione
n
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Testplanung
13
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Testsuite Struktur
Testplan-Name
Automated Tests
UI
Backend
Services
Manual Tests
UI
Backend
Services
© AIT GmbH & Co. KGIhre Software effizienter entwickelt 15
Planung Gesamt
MyEvent_1.0
UI
Test Case 1
Test Case 2
Test Case 3
Services
DB
Rest
© AIT GmbH & Co. KGIhre Software effizienter entwickelt 16
Planung Sprint 1
MyEvent_1.0 UI Test Case 1
© AIT GmbH & Co. KGIhre Software effizienter entwickelt 17
Planung Sprint 2
MyEvent_1.0 UI
Test Case 1
Test Case 3
© AIT GmbH & Co. KGIhre Software effizienter entwickelt 18
Planung Sprint 3
MyEvent_1.0 UI
Test Case 2
Test Case 3
© AIT GmbH & Co. KGIhre Software effizienter entwickelt 19
Planung Gesamt
MyEvent_1.0
UI
Test Case 1
Test Case 2
Test Case 3
Test Case 4
Services
DB
Rest
© AIT GmbH & Co. KGIhre Software effizienter entwickelt 20
Planung Sprint 4
MyEvent_1.0 UI
Test Case 3
Test Case 4
© AIT GmbH & Co. KGIhre Software effizienter entwickelt 21
TCM Sprintplanung
Sprint 1 Sprint 2 Sprint 3 Sprint 4
Repository v 1.0CopyCopyCopy Copy
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
TCM Baselining bei mehren Releases
Repository v 1.0
Repository v 2.0
Clone
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Demo WebAccess Testhub
Testmanagement
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Demo WebAccess Testhub
Testdurchführung
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Demo MTM
Testdurchführung
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
+49 151 55052624
AIT GmbH & Co. KGLeitzstr. 45, 70469 Stuttgart
www.aitgmbh.de
BERATUNGAgile ALM und TFS
.NET und Architektur
ENTWICKLUNGDienstleister für individuelle
Lösungen mit .NET und Azure
© AIT GmbH & Co. KG – Alle genannten und gezeigten Marken oder Warenzeichen sind eingetragene Marken oder eingetragene Warenzeichen ihrer jeweiligen Eigentümer und
ggf. nicht gesondert gekennzeichnet. Aus dem Fehlen der Kennzeichnung kann nicht geschlossen werden, daß es sich bei einem Begriff oder einem Bild nicht um eine
eingetragene Marke oder ein eingetragenes Warenzeichen handelt.
Wir unterstützen Sie
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
UI - Testautomatisierung
Der nächste Schritt
30
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
CodedUI Einordnung und Basics
Demos
Der erste Test
Win 8.1 Apps
Optimierung
Lokalisierung, Performance und Wartung
Agenda
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Wie ordnet sich CodedUI
in die TFS/VS Welt ein?
Microsoft Testmanager (MTM)
• Testmanagement
•Man. Testausführung (Formal+Agile)
• Testumgebungsmanagement
Visual Studio (Testautomatisierung)
• Code
• Autom. Testausführung
(DefaultLabTemplate.XAML)*
Lab Management (Testumgebungen)
• SCVMM
• Standard
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Technologie
TestautomatisierungWie ist CodedUI einzuordnen?
Welche Werkzeuge stehen mir zur
Verfügung?
Welche Technologien werden
unterstützt?
UI Testing
FrameworkWie werden die Technologien
eingebunden?
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Unterstützte Plattformen
Technology Support Comment
IE 8-11 Yes Older IEs are not supported
anymore
WinForms 2.0, WPF 3 Yes 3rd party controls could be a
problem
Win 8.1 Store Apps Yes VS 2013
Chrome, Firefox Yes Latest version via Selenium
Adapter, (> VS 2012 Update 1,
VS 2013)
Silverlight No Unofficial support for
Silverlight v4/v5 (only VS 2012)
Flash, Java, Mobile No e.g. Ranorex, Squish
Windows Win32 / MFC Partially May work with known issues
SharePoint Yes > SP 2007, > VS 2012 Update
1, VS 2013Vollständige Liste siehe
http://msdn.microsoft.com/en-
us/library/vstudio/dd380742.aspx
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
UITest Architektur
Web Plug-ins
(MSHTML/DOM)
Interpreter
Coded UI Test
Code
Generation
Test Runner
PlaybackRecorder
Rich Client Plug-ins
(UIA/MSAA)
Filter/
Aggregation
Rules
APIProperty
Provider
3rd Party Plug-ins
Action
Invoker
My UI
Technology Abstraction Layer
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Demo 1
Der erste CodedUI Test
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Demo 2 – Win 8.1
Touch this …
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
1 2
3 4
Anwendungsoptimierung
UI TechnologyOptimierung der
Anwendung für gute Test-
automatisierung
notwendig
MSAAWinforms / MFC
AccessibleDescription
Accessible Name
UIAWPF
AutomationProperties.Name
und AutomationId
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Demo 3
Optimierung
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Page object pattern
Within your web app's UI there are areas
that your tests interact with. A Page
Object simply models these as objects
within the test code. This reduces the
amount of duplicated code and means
that if the UI changes, the fix need only
be applied in one place. https://code.google.com/p/selenium/wiki/PageObjects
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Dutch way of testing
Within your web app's UI there are areas
that your tests interact with. A Page
Object simply models these as objects
within the test code. This reduces the
amount of duplicated code and means
that if the UI changes, the fix need only
be applied in one place. https://code.google.com/p/selenium/wiki/PageObjects
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Demo 4
Lokalisierung, Performance und Wartung
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
+49 151 55052624
AIT GmbH & Co. KGLeitzstr. 45, 70469 Stuttgart
www.aitgmbh.de
BERATUNGAgile ALM und TFS
.NET und Architektur
ENTWICKLUNGDienstleister für individuelle
Lösungen mit .NET und Azure
© AIT GmbH & Co. KG – Alle genannten und gezeigten Marken oder Warenzeichen sind eingetragene Marken oder eingetragene Warenzeichen ihrer jeweiligen Eigentümer und
ggf. nicht gesondert gekennzeichnet. Aus dem Fehlen der Kennzeichnung kann nicht geschlossen werden, daß es sich bei einem Begriff oder einem Bild nicht um eine
eingetragene Marke oder ein eingetragenes Warenzeichen handelt.
Wir unterstützen Sie
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Weiterführende Informationen
Testing Workshops von AIT (Standard / Inhouse)
http://www.aitgmbh.de/aktuelles/aktuelle-meldungen/detail/article/workshops-testautomatisierung-mit-codedui-und-visual-studio-lab-management.html
Internet
http://blog.aitgmbh.de/2011/01/07/codedui-diagnose-von-msaa-oder-uia-problemen-in-anwendungen-teil-1/
http://blog.aitgmbh.de/2011/01/20/codedui-wpf-anwendungen-fr-codedui-vorbereiten-teil-2/
http://blog.aitgmbh.de/2011/01/28/codedui-winforms-anwendungen-fr-uitest-vorbereiten-teil-3/
http://en.wikipedia.org/wiki/Microsoft_Active_Accessibility
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://www.microsoft.com/en-us/download/details.aspx?id=8442
http://www.twitter.com/nicoorschel
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Neuigkeiten aus der Produktgruppe …
46
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Releasezyklen
•
•
•
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
On-Premise
Code Lens
Agile Testing
Storyboarding
Charting
Cloud
Load Testing
Azure Dev/Test mit MSDN
Roadmap
Agenda
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Demo
Test (Load Testing in the cloud)
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
CodeLens
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Incoming Changes Code Lens (VS 2013 Update 2)
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Demo
Dev (CodeLens, Peek Definition und Scroll
Bar)
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Storyboarding
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Demo
Storyboarding, Exploratives Testen,
FeedbackClient
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Visual Studio 2013 Preview in Azure Catalog
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Demo
Test (AzureVM and WebApp)
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Visual Studio 2013Release Feature Ultimate with
MSDN
Premium with
MSDN
Test Professional
with MSDN
Professional with
MSDN
Professional
Update 1 Code Map ■
Update 2Code Map Debugger
Integration■
VS 2013 Memory Dump Analysis ■
VS 2013 CodeLens■
Team
Foundation
Service
Load Testing using Team
Foundation Service ■
VS 2013IntelliTrace Performance
Indicators
■
VS 2013 Peek Definition ■ ■ ■ ■
VS 2013Profile Guided
Optimization for C++ apps■ ■ ■ ■
Update 2 Unit Test Profiling ■ ■ ■ ■
VS 2013Office 365 Cloud Business
Apps■ ■ ■ ■
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Visual Studio ALM Roadmap
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Enterprise ready VS Online
Extensibility & Interop
Agile planning
Version control
Build
Team Explorer Everywhere
Testing
Release management
Application Insights
Overview
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Release management
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
DEV QAINT PRODTFS
Automates Deployments
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
DEV QAINT PRODTFS
Automate the pipeline workflow
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
DEV QAINT PRODTFS
Full Traceability
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Stage Stack
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Application Insights
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
A modern application – connected components
Users
Clients
Browser
Device
Desktop
Servers
Databases
Services
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Experience starts and ends with the user
User experience is what ultimately matters
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Plenty of opportunities for things to go wrong
iPhone app crashed
Server request too slow
Database overloadedDownstream service down
Feature too hard to use
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
1. Telemetry is collected at each
component: usage, performance,
exception, crash, event, synthetic
transactions, logs, developer-
supplied event data
2. Telemetry arrives to
Application Insights service
where it is processed
3. A 360 degree view of the
application – keep it available,
performing and improving.
Application
Insights
service
Application Insights
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Telemetry sources
platform
infrastructure
app
1
3
4
5
6
Outside-in monitoring
Developer-emitted traces and events
Observed application behavior
Infrastructure performance
“Meta-telemetry”
URL pings and web tests from 16 global pointsof presence.
Whatever the developer would like to sendto Application Insights.
No coding required – service dependencies,queries, response time, exceptions, logs, etc.
System performance counters.
Source code, builds, deployments, configurationchanges.
2 Observed user behaviorHow is the application being used?
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
Progressively “light up” the application
Start with any component of the application and add more later.
Increase visibility at each component.
Basic performanceInstall agent on platform – no change to application.
Non-invasive
Code change
Ping test/synthetic transactionsConfigure URL ping or deploy web tests – no application impact.
Application usageInject agent into application –little or no developer effort.
Custom telemetryUsing SDK developer emits custom events to the service.
© AIT GmbH & Co. KGIhre Software effizienter entwickelt
+49 151 55052624
AIT GmbH & Co. KGLeitzstr. 45, 70469 Stuttgart
www.aitgmbh.de
BERATUNGAgile ALM und TFS
.NET und Architektur
ENTWICKLUNGDienstleister für individuelle
Lösungen mit .NET und Azure
© AIT GmbH & Co. KG – Alle genannten und gezeigten Marken oder Warenzeichen sind eingetragene Marken oder eingetragene Warenzeichen ihrer jeweiligen Eigentümer und
ggf. nicht gesondert gekennzeichnet. Aus dem Fehlen der Kennzeichnung kann nicht geschlossen werden, daß es sich bei einem Begriff oder einem Bild nicht um eine
eingetragene Marke oder ein eingetragenes Warenzeichen handelt.
Wir unterstützen Sie