Windows Hardware Quality Labs or WHQL is Microsoft‘s testing process which involves in running a set of tests on third-party hardware or software application, and submitting the log files from these tests to Microsoft for review.
Products that pass the WHQL tests get to use a”Certified for Windows” logotype, which certifies that the Hardware or software has had some share of testing by Microsoft to ensure compatibility. The actual logo used depends on the version of Microsoft Windows.
At the end of this testing process, Microsoft signs the driver release with their own certificate to indicate that the driver has passed testing.
Independent Hardware Vendors (IHVs) that participate in this program can submit driver packages to be test-signed. The signature on a test-signed catalog file is generated by a test root certificate that is issued by WHQL under the Microsoft Test Root Authority. Along with the test-signed catalog file, WHQL also provides participants with the test root certificate.
WHQL Signing Advantages:
- Devices that pass the WHQL process are eligible to use the Windows logo for marketing use..
- Windows driver installations won’t display a warning indicating that the device driver has not passed logo certification.
- Driver catalog is signed by WHQL (Microsoft) rather than a third party.
- During WHQL testing, drivers are installed and uninstalled many times and in different orders for stress testing which helps to resolve most BSOD cases are caused by installation and power management problems.
Setup:
Setup for WHQL process divided into two part,HCK(Hardware Certification Kit) and HLK(Hardware Lab Kit).Before users can install a driver from a WHQL test-signed driver package, the test computer must be configured
- To run these tests you will need at least two computers: a test server and a test client.
- The User Account Control (UAC) must be disabled to install the WHQL test certificate correctly.
- The WHQL test root certificate (Testroot.cer) must be installed in the test computer
- The TESTSIGNING Boot Configuration Option must be set on the test computer.
- For HCK, windows server can be Win2012/Win2012R2 and test system version must be win7(32/64) or win server 2008 and above
- For HLK, windows server can be Win2012/Win2012R2 and test system version must be win10 or server 2k16.
Use cases:
- For driver testing ,Compatibility of driver with any other driver using WHQL.
- Driver operate in GUI and server core version.
- Driver inf verification.
- Driver Memory Test