*
Driver Lifecycle
*
**
Driver Lifecycle Fundamentals
***
Driver Design
***
Windows Driver Foundation (WDF)
***
Verification and Testing Tools
***
Installation & Driver Signing
***
Reliability+Security +Maintenance
* *
*

Verification and Testing Tools

The Windows Driver Kit (WDK) includes a broad set of compile-time code verification tools that supplement the runtime Driver Verifier that is built into the Windows operating system. You can use the code verification tools to instrument your code during development to ensure a more reliable, more serviceable driver. The WDK also includes a broad set of testing, tracing, simulation and debugging tools that make it easier for you to find problems early in the development cycle.

"Rule of thumb: A defect that costs $1 to fix on the programmer's desktop costs $100 to fix once it is incorporated into a complete program and many thousands of dollars if it is identified only after the software has been deployed in the field."

Building a Better Bug Trap, The Economist, June 2003

Testing Tools in the WDK
This WHDC page highlights the critically important tools from Microsoft for testing drivers throughout the development cycle, and it gives you tips from Windows developers on how to use these tools.

PREfast
PREfast analyzes code on a function-by-function basis and checks for common logic and usage errors. It detects certain classes of errors that the typical compiler cannot easily find.

Debugging Tools for Windows
This set of extensible tools for debugging device drivers includes WinDbg for source-level debugging.

Static Driver Verifier
SDV is a compile-time tool that explores code paths in a device driver by symbolically executing the source code. It applies knowledge about system internals to verify Windows Driver Foundation (WDF) and Window Driver Model (WDM) drivers.

Driver Verifier
Driver Verifier is the most important tool for detecting errors in kernel-mode driver tests. It traps many conditions that might otherwise go unnoticed during regular operation. KMDF Verifier provides features that supplement Driver Verifier.

Device Simulation Framework
DSF enables you to simulate hardware in software, which then appears like a real device to Windows. This simulation enables you to develop prototype hardware and device driver changes and to build comprehensive and flexible automated tests.

Related Blogs:

Trouble Ahead- Trouble Behind
Bob Kjelgaard writes about WDF, Testing, QA, and (occasionally) life at Microsoft

New WDF debugging videos on WHDC
Tue, 22 Sep 2009 16:41:32 GMT

Time Doth Flee
Tue, 15 Sep 2009 16:12:00 GMT

Yet another WDF Blogger
Wed, 02 Sep 2009 17:44:03 GMT

 


Was This Information Useful?