Skip to main content

About Driver 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

Ensure Driver Quality for Windows 8

Driver Testing for Windows Developer Preview
The WDK for Windows Developer Preview provides a sophisticated driver test framework and a set of device fundamental tests that you can use to automatically build, deploy, and test and verify your driver on remote test systems. It also contains the tools to make testing and debugging drivers more convenient and effective than before.

Code Analysis Tools for Windows Developer Preview
The WDK for Windows Developer Preview is integrated with Microsoft Visual Studio 11 Ultimate Developer Preview. The code analysis and verification tools can now be easily configured and launched from the Visual Studio development environment so that you can find and fix problems in your driver source early in the development cycle.

Ensure Driver Quality for Windows

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.

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

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.

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.

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.

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.