Print Driver Testing Tools Ashwin Needamangala Senior Test Development Lead Documents and Printing Team

Slides:



Advertisements
Similar presentations
Testing And Tools For Print And Imaging Drivers
Advertisements

Introduction to Maven 2.0 An open source build tool for Enterprise Java projects Mahen Goonewardene.
CREATING CERTAINTY Intelligent router tool, designed to create certainty in your network. 1COPYRIGHT © 2010 SERTUS NETWORKS LIMITED - ALL RIGHTS RESERVED.
Printer Driver Development in Windows 7
Windows Driver Quality Signature Alok Sinha Product Unit Manager Windows Driver Kits microsoft.com Microsoft Corporation.
Best Practices For Testing Windows Drivers
PVK-HT061 Contents Introduction Requirements Engineering Project Management Software Design Detailed Design and Coding Quality Assurance Maintenance.
V0.01 © 2009 Research In Motion Limited Introduction to Java Application Development for the BlackBerry Smartphone Trainer name Date.
Chapter 11: Testing The dynamic verification of the behavior of a program on a finite set of test cases, suitable selected from the usually infinite execution.
Amit Chopra APP209 Introducing “Orcas” Huh ? What’s “Orcas”?
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.
Distributing Drivers on Windows Update
Best Practices for Developing Printer Drivers Justin Hutchings Program Manager Microsoft Corporation Shawn Maloney Program Manager Microsoft Corporation.
Printer Installation and Driver Management Shawn Maloney Program Manager WEX DOX Device Interfaces
Print Verifier Ashwin Needamangala Senior Test Development Lead Documents and Printing Team
XPSDrv Best practices using Print Verifier
Using The WDK For Windows Logo And Signature Testing Craig Rowland Program Manager Windows Driver Kits Microsoft Corporation.
Print Driver And XPSDrv Testing In Windows Vista
New Document Lifecycle Opportunities N. Gregg Brown Lead Program Manager Digital Documents microsoft.com Microsoft Corporation.
Driver Verifier Advancements In Windows 7 Daniel Mihai Principal Software Design Engineer Windows Engineering Tools.
Drivers & Installation. In computing, a device driver is a computer program that operates or controls a particular type of device that is attached to.
Effective Methods for Software and Systems Integration
September 2008 IT Software Development Guide.
Debugging Print And Imaging Drivers. Print driver team philosophy on driver quality There are tools to detect violations Wrongful development assumptions.
CS110/CS119 Introduction to Computing (Java)
CCSB223/SAD/CHAPTER141 Chapter 14 Implementing and Maintaining the System.
Software Quality Assurance Lecture #8 By: Faraz Ahmed.
1. Topics to be discussed Introduction Objectives Testing Life Cycle Verification Vs Validation Testing Methodology Testing Levels 2.
Using the WDK for Windows Logo and Signature Testing Craig Rowland Program Manager Windows Driver Kits Microsoft Corporation.
Introduction Purpose This course describes the process of installing the KPIT GNU toolchain on your PC. Objective Learn how easy it is to get information.
1 Debugging and Testing Overview Defensive Programming The goal is to prevent failures Debugging The goal is to find cause of failures and fix it Testing.
Lyndon Bethel. Agenda Free help options Paid help options: Link What you get for your money Issue tracking Issue quality feedback Product quality changes.
Testing Basics of Testing Presented by: Vijay.C.G – Glister Tech.
Design and Programming Chapter 7 Applied Software Project Management, Stellman & Greene See also:
XPS Rasterization Service in Windows 7
Jennifer Stepler WDK Program Manager. Agenda Catalog signing vs. embedded signing. How to embed-sign: Getting Started Preparing your signing certificate.
Topics Covered: Software testing Software testing Levels of testing Levels of testing  Unit testing Unit testing Unit testing  Integration testing Integration.
The Software Development Process
Microsoft Management Seminar Series SMS 2003 Change Management.
Chapter 8 Lecture 1 Software Testing. Program testing Testing is intended to show that a program does what it is intended to do and to discover program.
Updates to the Windows Logo Program Tools for Windows 7 Karl FroelichCraig Rowland Lead Program ManagerSenior Program ManagerOnline Device Services
Debugging 1/6/2016. Debugging 1/6/2016 Debugging  Debugging is a methodical process of finding and reducing the number of bugs, or defects, in a program.
Customer and Partner Connections Design and Develop Assess and Certify.
Test Plan: Introduction o Primary focus: developer testing –Implementation phase –Release testing –Maintenance and enhancement o Secondary focus: formal.
 Software Testing Software Testing  Characteristics of Testable Software Characteristics of Testable Software  A Testing Life Cycle A Testing Life.
© 2016 LDRA Ltd The FACE Conformance Verification Matrix in Practice.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
1 Phase Testing. Janice Regan, For each group of units Overview of Implementation phase Create Class Skeletons Define Implementation Plan (+ determine.
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
Application Migration Fritz Ohman Alphageek
Debuggers. Errors in Computer Code Errors in computer programs are commonly known as bugs. Three types of errors in computer programs –Syntax errors –Runtime.
Database Development with SQL Server Data Tools (SSDT) Björn Eriksen, Architect Evangelist DPE Microsoft
Rade Trimceski Program Manager Microsoft Corporation Mitesh Desai Software Design Engineer Microsoft Corporation.
YongChul Kwon CSE451 Section 1: Spring 2006 YongChul Kwon
Introducing the Windows Mobile development
Mobile Device Development
ADK HLK and E/WDK updates for the Windows 10 Fall Creators Update
Project Center Use Cases Revision 2
Project Center Use Cases
CS1101X Programming Methodology
Chapter 8 – Software Testing
Verification and Testing
IEEE Std 1074: Standard for Software Lifecycle
Developing Drivers in Visual Studio
Though there is numerous reason for the error, that is not easy to identify. Check out some of the reason for the error mentioned below-  Incomplete.
Project Center Use Cases Revision 3
Project Center Use Cases Revision 3
1/14/2019 3:57 AM © 2004 Microsoft Corporation. All rights reserved.
Baisc Of Software Testing
Delivering great hardware solutions for Windows
Presentation transcript:

Print Driver Testing Tools Ashwin Needamangala Senior Test Development Lead Documents and Printing Team

Agenda Driver Quality Challenges Tools for the software development lifecycle Development Phase Tools walk-through Demonstration of development tools Testing Phase Tools walk-through Demonstration of testing tools Call to Action

Driver Quality Challenges Print driver problems hard to find early No native support for resource tracking in print subsystem No print-specific tools for extended runtime checks Numerous distribution vehicles for print-specific developer and test tools High rate of bug discovery during Windows Logo Kit (WLK) submission runs

Tools for the Software Development Lifecycle (SDL) Development Phase Print Verifier IsXps PTConform LooksGood INFGate Testing Phase Print Verifier Windows Logo Kit (WLK) Tests XPS Content Library

Development Phase Print Verifier Runtime verification tool Designed to catch violators in the act Flags errors via debugger breaks Supports both XPSDrv and GDI drivers Ships as part of Application Verifier Verifies print resource usage (leaks, use-after-free, etc.) Provides runtime PrintSchema conformance verification

Development Phase IsXps OPC and XPS conformance validation tool Easy-to-use command line interface Detailed error information helps quickly isolate bugs Ships in the WDK, WLK and SDK PTConform PrintSchema conformance validation tool Easy-to-use command line interface with detailed error information Ships in the WDK, WLK and SDK Integrated into Print Verifier for runtime PrintSchema conformance verification

Development Phase LooksGood Automated rendering verification tool Uses Windows Presentation Foundation to render XPS to TIFF Ships in the WDK and WLK INFGate Syntax checker for INF files of print and imaging drivers Easy-to-use command line interface Ships in the WDK and WLK

Demo Development Tools

Testing Phase Print Verifier Use for detection of incorrect print resource usage (leaked printer handles, use-after-free, thread-unsafe use, etc.) Turn on runtime PrintSchema conformance validation for easy detection of PrintTicket/PrintCapabilities bugs Enable fault injection to detect bugs in failure code paths within the driver

Testing Phase Windows Logo Kit (WLK) Tests Driver Test Manager (DTM) infrastructure for normal execution of tests Most tests can be executed without DTM Copy executable from controller \\Controller_Name\Tests\ fre\nttest\printscantest\printing Enable Application Verifier Spoolsv.exe: Basics + Printing PrintFilterPipelineSvc.exe: Basics + Printing Test executable: Basics + Printing Run Spoolsv.exe and PrintFilterPipelineSvc.exe under debugger Execute test under debugger

Testing Phase XPS Content Library Conformant XPS content from diverse producers Non-conformant or invalid XPS content (Violate-One) Corrupted XPS content

Demo How to run WLK tests without DTM

Distribution Vehicles WDKWLKSDK IsXps PTConform LooksGood INFGate WLK Tests XPS Content Library WDK = Windows Driver Kit WLK = Windows Logo Kit SDK = Software Development Kit

Summary Numerous easy-to-use tools available Cover range of software development lifecycle needs Print Verifier is critically important Using these tools through your SDL will increase the probability of having a failure-free WLK submission run

Call To Action Push quality assurance upstream Get familiar with available tools Look in WDK, WLK and SDK for these tools Use tools through all phases of the software development lifecycle Try out Print Verifier against your XPSDrv filters and GDI minidrivers Integrate Print Verifier into your development and test environments Visit the Print Verifier blog

Additional Resources Print Verifier Blog: Newsgroup on Microsoft.public.win32.programmer.tools Tools Download Application Verifier: Application Verifier Documentation: Print Devices on the WHDC Web Site: XPS: and

Related Sessions SessionDay / Time Best Practices for Developing Printer DriversMon. 8:30-9:30 and Tues. 8:30-9:30 Printer Installation and Driver ManagementMon. 9:45-10:45 and Tues. 2:45-3:45 Printer VerifierTues Printer Driver Testing ToolsTues. 9:45-10:45 and Wed. 8:30-9:30 Printer Driver Testing and the Windows Logo KitTues. 1:30-2:30 XPS Rasterization Services in Windows 7Mon. 1:30-2:30 and Tues. 5:15-6:15 Printer Driver Development in Windows 7Mon and Tues. 4-5 Discussion: XPS Driver Development in Windows 7Mon. 4-5 and We. 1:30-2:30