Ausführen der DevFund-Tests über die Befehlszeile
Übersicht
Es gibt mehrere Möglichkeiten, die DevFund- und SysFund-Tests über die Befehlszeile auszuführen. Die Anweisungen auf dieser Seite beziehen sich auf die Ausführung der Tests über die Befehlszeile mit Visual Studio und dem Windows Driver Kit (WDK), ohne jedoch das Testsystem über Visual Studio zu bereitstellen.
Weitere Methoden zum Ausführen der DevFund- und SysFund-Tests sind:
Hardware Lab Kit (HLK): Die Tests können über die Befehlszeile auf einem HLK-Clienttestcomputer ausgeführt werden.
Testcomputer "bereitgestellt" über Visual Studio: Ausführen des Tests über die Befehlszeile
Enterprise Windows Driver Kit (EWDK- erfordert nicht Visual Studio): Wenn Visual Studio nicht installiert ist und nicht verwendet wird, verwenden Sie das EWDK, um Tests auf der Befehlszeile auszuführen.
Einrichtung
Beachten Sie, dass die folgenden Befehle über eine Eingabeaufforderung mit erhöhten Rechten/Administrator ausgeführt werden müssen, da die WDTF-Installation Treiber auf dem System installiert. In den folgenden Anweisungen wird davon ausgegangen, dass die Systemarchitektur x64 ist. Die folgenden Schritte müssen möglicherweise für andere Architekturen angepasst werden.
Schritt 1 : Installieren von Visual Studio und dem Windows Driver Kit (WDK)
Schritt 2 : Die Tests verwenden den TAEF-Dienst .
Um den TAEF-Dienst (Te.service) zu installieren, wechseln Sie zu %PROGRAMFILES(X86)%\Windows Kits\10\Testing\Runtimes\TAEF\x64
, und führen Sie die folgenden Befehle aus, um den Dienst zu starten:
wex.services.exe /install:te.service
(Überprüfen Sie, ob te.service erfolgreich installiert wurde)sc start te.service
(Vergewissern Sie sich, dass "STATE" "START_PENDING" ist)sc query te.service
(Überprüfen Sie, ob "STATE" "RUNNING" ist)sc qc te.service
(Vergewissern Sie sich, dass "START_TYPE" "AUTO_START" ist)
Fügen Sie dieses Verzeichnis der Systemumgebungsvariable PATH hinzu, und starten Sie die Eingabeaufforderung mit erhöhten Rechten neu.
Schritt 3 : Installieren Sie WDTF , indem Sie zum Speicherort der WDTF-MSI (%PROGRAMFILES(X86)%\Windows Kits\10\Testing\Runtimes\
) navigieren und das Paket für die gewünschte Architektur installieren. Geben Sie in diesem Beispiel einen Speicherort und namen für die Installationsprotokolldatei %USERPROFILE%\Desktop\WDTFInstall.log an:
cd %PROGRAMFILES(X86)%\Windows Kits\10\Testing\Runtimes\
msiexec /i "Windows Driver Testing Framework (WDTF) Runtime Libraries-x64\_en-us.msi" /l\* "%USERPROFILE%\Desktop\WDTFInstall.log"
Die WDTF MSI installiert WDTF in %PROGRAMFILES%\Windows Kits\10\Testing\Runtimes\WDTF , da in diesem Beispiel die 64-Bit-WDTF-MSI verwendet wird, obwohl die WDTF-MSI unter %PROGRAMFILES(X86)% lag.
Schritt 4 : Konfigurieren sie den Computer zum Testen:
Konfigurieren Sie den Computer, um vollständige Abbildbilder zu sammeln oder einen Kerneldebugger anzufügen.
Da die Tests den Computer möglicherweise neu starten können und die Standbyzyklen steuern müssen, konfigurieren Sie den Computer so, dass er nie in den Standbymodus versetzt, die Anzeige nie deaktiviert und die automatische Anmeldung bei einem Testkonto (netplwiz.exe) durchgeführt werden muss. Beachten Sie, dass die automatische Anmeldung mit Vorsicht verwendet werden sollte.
Schritt 5 : Führen Sie den Test aus. Die DevFund-Tests befinden sich unter %PROGRAMFILES(X86)%\Windows Kits\10\Testing\Tests\Additional Tests\x64\DevFund.
Der grundlegende Befehl zum Ausführen eines DevFund-Tests hat folgende Form:
Te.exe Devfund_<testname>.dll /name:"<test case name>" /p:"DQ=DeviceID='<Device Instance Path of device under test from Device Manager>'" /RebootStateFile:state.xml
Dabei ist <test case name> der Name des Tests in der Binärdatei.
Der / name-Schalter ist optional. Da einige Testbinärdateien mehrere Tests enthalten, gibt der Schalter / Name an, welche Tests ausgeführt werden sollen. Wenn er nicht angegeben wird, werden alle Tests in der Binärdatei nacheinander ausgeführt. Sie können mit dem folgenden Befehl eine Liste der Tests in einer Binärdatei abrufen:
Te.exe Devfund\<testname>.dll /list
Die Datei „Devfund_PnPDTest.dll“ enthält beispielsweise die meisten PnP-bezogenen Tests:
Te.exe Devfund_PnPDTest_WLK_Functional.dll /list
Test Authoring and Execution Framework v10.21 for x64
Devfund_PnPDTest_WLK_Functional.dll
PNPDTest
PNPDTest::PNPDisableAndEnableDevice
PNPDTest::PNPRemoveAndRestartDevice
PNPDTest::PNPCancelRemoveDevice
PNPDTest::PNPCancelStopDevice
PNPDTest::PNPTryStopAndRestartDevice
PNPDTest::PNPTryStopDeviceRequestNewResourcesAndRestartDevice
PNPDTest::PNPTryStopDeviceAndFailRestart
PNPDTest::PNPSurpriseRemoveAndRestartDevice
PNPDTest::PNPDIFRemoveAndRescanParentDevice
PNPDTest::DisableEnhancedDeviceTestingSupport
Der Befehl zum Ausführen eines einzelnen Tests aus dieser Binärdatei könnte wie folgt lauten:
c:\temp\Te.exe Devfund_PnPDTest_WLK_Functional.dll /name:PNPDTest::PNPSurpriseRemoveAndRestartDevice* /p:"DQ=DeviceID='my\device\id'" /RebootStateFile:state.xml