WDK Driver Test Manager
Outline HCT and the history of driver testing Problems to solve Goals of the WDK Driver Test Manager (DTM) Automated Deployment Tools Packager Changes to the Windows Logo Program
The HCT Today Hardware Compatibility Test (HCT) Can only run logo tests provided by Microsoft Used for DFW/logo program Content ~1600 Test Cases (400+ binaries) Test Manager (shell) Logo Docs and Test Specs
Testing for Driver quality Some partners develop their own tests and infrastructure Some partners use only the logo tests for quality testing
What You Told Us HCT is not scalable Adding new technologies is problematic Can’t run non-logo tests Can’t run on more than one machine Can’t run partner tests
Partners must maintain Logo-only infrastructure Dedicated hardware Dedicated headcount
Goals of Driver Test Manager (DTM) Improve the end user Windows experience Reduce blue-screens Increase performance Improve driver quality
Improve the partner experience Provide MS quality tests Allow partner tests Provide infrastructure to push testing earlier in development cycle Reduce submission complexity
Key Concepts Test Management Studio Device Selection and Scheduling
Controller Jobs database
Client Packager Collaboration tool Tests and content delivery
Automated Software Installer (ASI)
DTM Scenario
The package can be saved so the tests can be duplicated at a later date… After reviewing the The scheduler My Job results, the test matches the jobs to Scheduler Job 0 engineer packages the test targets with all test information the appropriate OEMs Automation and results hardware Datastore My Job …and shared with nt Config Device x e customers, OEMs,emor submitted to ag n a Microsoft The test engineer DTM Controller The gatherers M The jobs and test b creates and are sent to the Jo Microsoft configuration are sent manages jobs from test targets to to the test targets the studio gather Device00 Device Device 0 information about Log When thedevices tests are their complete, the results are sent to the Log 1 controller where they The test targets are can be reviewed configured DTM Studio automatically, Log 0 including a clean installThe of the OSexecute in parallel or in tests Test System sequence, collecting results in logs Pool
Driver Test Manager (DTM)
Jobs A collection of 1 or more tasks Tasks are executables, like “LogoTest.exe” Task dependencies can be created Setup, Regular, Cleanup
Created, edited and scheduled in Studio Sharable Constrainable Dimensions Parameters
Driver Test Manager (DTM) Scheduler Matches constraints and test machines (clients) Manages job distribution to Machine pool
Job Monitor Presents status of machines in machine pool (clients) Presents status of jobs in scheduler Presents status of tasks in jobs
Results Explorer Results roll-up view Results collection Log viewer
Device Selection Provides for “Device Based Job Selection” paradigm Adds HCT functionality to the DTM Necessary for Logo Programs
Automated Deployment Tools Ximage and ASI
Ximage and ASI Ximage A command line interface to the imaging technology used by Windows codenamed “Longhorn” setup Will create file based image and restore it
Automated Software Installer (ASI) Automate the install of any Windows OS From disk images From Windows CDs
Optimized for testing environments
Benefits Increased productivity Eliminate multi-boot and disk-swapping scenarios Manage images and builds for the entire organization in one location
Ximage System Imaging Tool
Ximage Architecture
Ximage.exe Wimgapi.dll
Wimfltr.sys
Header
Metadata
Image Metadata
File Data
Tail
Automated Software Installer Windows Deployment Tool
ASI Functionality File Share
Windows Media or images
ASI Tools
ASI Database
ASI Client
ASI Client Configuration
1. PXE Boot
2. Bootable media
3. Safe partition
Using ASI in the Driver Test Manager My Job Config
Partition 1
Partition 2
“Safe” OS
Test OS
ASI client
DTM client
DTM client
Log 1
ASI Server Deployment ASI Database
File Share
ASI Server
Image Cache
Image Cache ASI Client
ASI Server
Ximage and ASI: Which One Should I Use? Ximage A disk imaging tool
ASI A software deployment solution optimized for testing environments
Use if you want to restore a test system to exactly the same state multiple times
Use to automate Windows setup
Use if the bits don’t change regularly
Use if the bits change regularly; testing daily builds for example
What About Ghost? The DTM will automate any tool with a command line interface Virtually everyone is using Ghost images in their testing Keep using your existing images Consider moving to Ximage and ASI over time Realize the benefits of tools optimized for a test environment Ximage and ASI are included in the WDK Some jobs Microsoft provides may require these tools
Packager
Packager Architecture
DTM Studio DTM Object Model
SQL Datastore
Package A
Package B
Benefits of Packager Move jobs or test data between controllers Share jobs with another organization Share test results with other organizations Make a logo submission Simplified reproduction of failures Update mechanism for the WDK
Packager Functionality
DTM Datastore
Copy
Package DB
DTM Controller Package
Copy Binaries
Binaries
Packager Scenarios
Scenario
Create Logo Package
Logs, results, machine configuration data
DTM Controller
Submit to Microsoft Driver Share
Drivers
Scenario
Investigate a Failure View Data Import
DTM Controller
Test Clients
Jobs, tests, results, system configuration data, crash dumps
Studio
DTM Controller
Test Clients
Scenario
Export Tests
Import
DTM Controller
Jobs and tests
DTM Controller
Test Clients
Scenario
Package logs and results
View Data
Studio Import
Results and Logs
DTM Controller
DTM Controller Test Clients
Windows XP and Windows Server 2003 Logo Program Support
Windows XP and Windows Server 2003 Logo Program Support Program simplification Reduce the number of HCT tests to about 30 One “kit” for all Windows XP and Windows Server 2003 devices One “kit” for all Windows XP and Windows Server 2003 systems, excluding datacenter and cluster
Windows XP and Windows Server 2003 kits will be in the DTM HCT and DCT will reach end-of-life when the DTM ships
Call To Action Start preparing for the WDK now Sign up for the WDK Beta and actively participate Visit the Windows Driver Kit Page – http://www.microsoft.com/ whdc/driver/wdk/default.mspx
Engage with the WDK Team - provide feedback through Microsoft aliases
Additional Resources Web Resources: Windows Driver and Hardware Central – http://www.microsoft.com/whdc/default.mspx Windows Driver Kit Page – http://www.microsoft.com/whdc/driver/wdk/default.mspx
Email: WDKFB @ microsoft.com for feedback and questions on the WDK
© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.