WDK Driver Test Manager. Outline HCT and the history of driver testing Problems to solve Goals of...

34
WDK Driver Test Manager

Transcript of WDK Driver Test Manager. Outline HCT and the history of driver testing Problems to solve Goals of...

Page 1: 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.

WDK Driver Test Manager

Page 2: 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.

OutlineOutline

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

Page 3: 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.

The HCT TodayThe 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 qualitySome partners develop their own tests and infrastructure

Some partners use only the logo tests for quality testing

Page 4: 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.

What You Told UsWhat You Told Us

HCT is not scalableAdding 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 infrastructureDedicated hardware

Dedicated headcount

Page 5: 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.

Goals of Driver Test Manager (DTM)Goals of Driver Test Manager (DTM)

Improve the end user Windows experienceReduce 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

Page 6: 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.

Key ConceptsKey Concepts

Test ManagementStudio

Device Selection and Scheduling

ControllerJobs database

Client

PackagerCollaboration tool

Tests and content delivery

Automated Software Installer (ASI)

Page 7: 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.

AutomationAutomationDatastoreDatastore

DTM ScenarioDTM Scenario

DTM ControllerDTM Controller

Job 0

Log 1

Log 0

Log

SchedulerScheduler

DTM StudioDTM Studio

Test System Test System PoolPool

Job

Man

agem

ent

Device 0Device 0Device 0

My Job

My JobConfig Device x

The gatherers are sent to the test targets to gather information about their devices

The test engineer creates and manages jobs from the studio

The scheduler matches the jobs to the test targets with the appropriate hardware

The jobs and test configuration are sent to the test targets

The tests execute in parallel or in sequence, collecting results in logs

When the tests are complete, the results are sent to the controller where they can be reviewed

After reviewing the results, the test engineer packages all test information and results

The test targets are configured automatically, including a clean install of the OS

The package can be saved so the tests can be duplicated at a later date…

…and shared with customers, OEMs, or submitted to Microsoft

OEMsOEMs

MicrosoftMicrosoft

Page 8: 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.

Driver Test Manager (DTM)Driver Test Manager (DTM)

JobsA 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 StudioSharableConstrainable

DimensionsParameters

Page 9: 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.

Driver Test Manager (DTM)Driver Test Manager (DTM)

SchedulerMatches constraints and test machines (clients)Manages job distribution to Machine pool

Job MonitorPresents status of machines in machine pool (clients)Presents status of jobs in schedulerPresents status of tasks in jobs

Results Explorer Results roll-up viewResults collectionLog viewer

Device SelectionProvides for “Device Based Job Selection” paradigmAdds HCT functionality to the DTMNecessary for Logo Programs

Page 10: 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.

Automated Deployment Tools

Ximage and ASI

Page 11: 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.

Ximage and ASIXimage and ASI

XimageA 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

BenefitsIncreased productivity

Eliminate multi-boot and disk-swapping scenarios

Manage images and builds for the entire organization in one location

Page 12: 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.

Ximage

System Imaging Tool

Page 13: 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.

Ximage ArchitectureXimage Architecture

Ximage.exe

Wimgapi.dll

File DataImage

MetadataMetadata

Header

Tail

Wimfltr.sys

Page 14: 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.

Automated Software Installer

Windows Deployment Tool

Page 15: 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.

ASI FunctionalityASI Functionality

Windows Media or images

ASI Client

ASI Tools

File Share

ASI Database

Page 16: 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.

ASI Client ConfigurationASI Client Configuration

1. PXE Boot1. PXE Boot

3. Safe partition3. Safe partition

2. Bootable media2. Bootable media

Page 17: 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.

Using ASI in the Driver Test ManagerUsing ASI in the Driver Test Manager

Partition 1

“Safe” OS

ASI client

DTM client

Partition 2

Test OS

DTM client

My Job

Config

Log 1

Page 18: 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.

ASI Server DeploymentASI Server Deployment

ASI ClientASI Client

ASI ServerASI Server

Image Cache

Image Cache

ASI ServerASI Server

File ShareASI Database

Page 19: 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.

Ximage and ASI: Which One Should I Use?Ximage and ASI: Which One Should I Use?

Ximage

A disk imaging tool

Use if you want to restore a test system to exactly the same state multiple times

Use if the bits don’t change regularly

ASI

A software deployment solution optimized for testing environments

Use to automate Windows setup

Use if the bits change regularly; testing daily builds for example

Page 20: 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.

What About Ghost?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

Page 21: 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.

Packager

Page 22: 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.

Packager ArchitecturePackager Architecture

DTM Studio

DTM Object Model

SQL Datastore

Package A Package B

Page 23: 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.

Benefits of PackagerBenefits 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

Page 24: 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.

PackagePackage

DTM ControllerDTM Controller

Packager FunctionalityPackager Functionality

DTM DatastoreCopyCopy

CopyCopy

Package DB

BinariesBinaries BinariesBinaries

Page 25: 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.

Packager Scenarios

Page 26: 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.

ScenarioScenarioCreate Logo PackageCreate Logo Package

Driver Share

Logs, results, machine Logs, results, machine configuration dataconfiguration data

Submit to Submit to MicrosoftMicrosoft

DriversDrivers

DTM ControllerDTM Controller

Page 27: 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.

ScenarioScenarioInvestigate a FailureInvestigate a Failure

Test ClientsTest Clients

Jobs, tests, results, Jobs, tests, results, system configuration data,system configuration data,

crash dumpscrash dumps

Test ClientsTest Clients

StudioStudio

View DataView Data

ImportImport

DTM ControllerDTM Controller DTM ControllerDTM Controller

Page 28: 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.

ScenarioScenarioExport TestsExport Tests

Jobs and testsJobs and tests

Test ClientsTest Clients

ImportImport

DTM ControllerDTM Controller DTM ControllerDTM Controller

Page 29: 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.

ScenarioScenarioPackage logs and resultsPackage logs and results

Results Results and Logsand Logs

Test ClientsTest Clients

StudioStudio

View DataView Data

ImportImport

DTM ControllerDTM Controller

DTM ControllerDTM Controller

Page 30: 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.

Windows XP and Windows Server 2003 Logo Program Support

Page 31: 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.

Windows XP and Windows Server 2003 Windows XP and Windows Server 2003 Logo Program SupportLogo Program Support

Program simplificationReduce 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

Page 32: 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.

Call To ActionCall 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

Page 33: 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.

Additional ResourcesAdditional 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

Page 34: 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.

© 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.