对运行基于 WDTF 的测试时出现的问题进行诊断

为了帮助你排查运行基于 WDTF 的测试时遇到的问题,可以使用调试器。

诊断基于 WDTF 的测试无响应的问题, (从 Visual Studio)

  1. 配置内核调试器并将其连接到运行基于 WDTF 的测试的计算机。 请参阅 (WDK 8.1) 预配计算机以便进行驱动程序部署和测试 ,或 (WDK 8) 预配计算机进行驱动程序部署和测试

  2. 搜索 Te.exe 进程并将上下文切换到该进程。 有关 Te.exe 的信息,请参阅 测试创作和执行框架 (TAEF)

    !process 0 0 Te.exe 
    
    PROCESS fffffa80093c6340
    
    SessionId: 1 Cid: 1320 Peb: 7f6595b3000 ParentCid: 12a0
    
    DirBase: 21eee000 ObjectTable: fffff8a0035b0a00 HandleCount: 327.
    
    Image: TE.exe
    
    ·         .process /p /r fffffa80093c6340
    
    ·         
    
  3. 运行 !process 命令以标识在 Te.exe 下运行的线程。

    !process fffffa80093c6340
    

    在堆栈上查找具有 WDTF* 的线程。

  4. 如果) 存在,请对 Te.ProcessHost.exe (重复步骤 3。

诊断 PnP 和电源管理测试的问题

可以使用这些命令诊断问题。

!powertriage (提供有关系统和设备电源相关组件的信息) !devnode (显示有关 PnP 树的信息) !process (检查进程以查找关联线程) !thread (查看有关线程的信息) !wdfkd.wdfdevice (以获取 WDF 驱动程序信息) 确认存在活动 PnP 或电源管理线程停滞 (检查 TickCount 以获取此) , 跟进正确的组件所有者。 (你可以通过查看停滞线程) 的堆栈来查找组件所有者。