Sdílet prostřednictvím


Jak vybrat a nakonfigurovat testy Základy zařízení

WDK pro Windows 8 poskytuje rozhraní pro testování ovladačů, které obsahuje sadu testů označovaných jako testy Základy zařízení. Testy Základy zařízení jsou kolekce testů, které se používají interně v Microsoftu pro testování ovladačů a ukázek ovladačů, které jsou dodávány s Windows a WDK, a externě jako součást Programu certifikace systému Windows pro hardware. Testy můžete spouštět z vývojového prostředí. Při spouštění testů můžete použít stejné parametry, které se používají pro testování certifikace systému Windows, nebo můžete nakonfigurovat a přizpůsobit parametry za běhu podle potřeb testování a ladění.

Jak efektivně využít testy Základů zařízení

Abyste získali největší výhody z fundamentálních testů zařízení, musí být vaše zařízení podporováno výchozími zásuvnými moduly I/O. Zjistíte, zda je váš typ zařízení podporovaný a zda existují specifické požadavky pro testování v zásuvné moduly WDTF Simple I/O. Test fundamentálních zařízení obsahuje také pomocný nástroj, který můžete použít k otestování zařízení a zjistit, zda je podporováno. Pokud vaše zařízení není podporované, můžete vytvořit plug-in WDTF Simple I/O. v prostředí Visual Studio. Další informace naleznete v tématu Přizpůsobení vstupně-výstupních operací pro vaše zařízení pomocí modulu plug-in akce WDTF Simple I/O.

O základních testech zařízení

WDK poskytuje základní testy zařízení ve dvou konfiguracích, základní a certifikační. V obou konfiguracích můžete upravit parametry testu tak, aby se lišila délka testu, počet cyklů testu a další parametry testu, v závislosti na tom, jak chcete testovat cílová zařízení nebo ovladače. Základní konfigurace je určená pro obecné testování a ladění ovladačů a zařízení. Základní konfiguraci používejte v rané fázi a v průběhu vývojového cyklu. Testy v konfiguraci Basic mají stejná nastavení, která se používají při testování certifikace systému Windows, s výjimkou kratší doby běhu. V konfiguraci certifikace mají testy stejná nastavení, která se používají při testování certifikace systému Windows. Pomocí konfigurace certifikace ověřte připravenost na testování zařízení nebo ovladače pro certifikační program Systému Windows pro hardware.

Testy základů zařízení zahrnují testy v následujících kategoriích.

Nastavení parametrů testu za běhu

Pro mnoho testů základních funkcí zařízení můžete upravit výkonné parametry. V okně Testovací skupina řidiče šipka (») vedle názvu testu označuje, že test obsahuje parametry, které můžete změnit. Vyberte šipku (») pro zobrazení parametrů běhu.

Jedním z nejužitečnějších parametrů je DQ, který určuje cílové zařízení, které se má testovat. Výchozí hodnota (IsDevice) testuje všechna zařízení na cílovém počítači. Parametr DQ přebírá dotaz WDTFSDEL , který identifikuje cílová zařízení. Můžete zadat konkrétní zařízení pro testování, například:

DeviceID='USB\ROOT_HUB\4&1CD5D022&0' vybere jenom zařízení pro testování pomocí zadaného ID zařízení.

Další informace o DQ a dalších parametrech za běhu naleznete v tématu Základy zařízení – parametry testu.

Parametry testu základy zařízení

Parametr Popis

DQ

Identifikuje zařízení nebo zařízení, která by se měla použít k testování. Parametr DQ přebírá dotaz WDTFSDEL , který identifikuje cílová zařízení. Tento dotaz může být velmi flexibilní a dá se použít k vyjádření libovolného počtu zařízení, od jednoho zařízení po všechna zařízení v systému.

Běžné příklady:

Testování všech zařízení nainstalovaných s konkrétním souborem INF:

INF::FileName=INF_File_Name

Například INF::OriginalInfFileName='KMDFTest.inf'

INF::OriginalInFileName lze použít s libovolným INF.

Testování zařízení s konkrétním ID zařízení:

DeviceId='DeviceId'

Například DeviceID='USB\ROOT_HUB\4&1CD5D022&0'

Testování zařízení s konkrétním rozhraním:

Rozhraní::InterfaceGUID

Testování zařízení s určitým písmenem ovladače:

Volume::DriverLetter='DriveLetter'

Například Svazek::DriverLetter='c:\'

Testování zařízení s konkrétním ovladačem:

DriverBinaryNames=mydriver.sys

Kde je KMDFTest.inf, soubor inf použitý pro instalaci ovladače. Můžete také cílit na následující zařízení, která používají KMDFTest.sys ovladač.

Funguje (DriverBinaryNames='KMDFTest.sys').

Po správném nastavení SDEL by se při spuštění testu měl v konzole zobrazit následující výstup.

WDTF_TARGETS : INFO : - Dotaz("IsDevice AND ((Inf::OriginalInfFileName='KMDFTest.inf'))") WDTF_TARGETS: INFO: Target: KMDFTest Device ROOT\SAMPLE\0000 WDTF_TEST : INFO: UPOZORNĚNÍ: Test nevynucuje, že je povolený Ověřitel ovladače. WDTF_TEST: INFORMACE: DV je povoleno příznakem:=0x209bb WDTF_TEST: INFORMACE: DV je úspěšně povolen pro všechny ovladače tohoto devnode(UniqueTargetName):=KMDFTest Device ROOT\SAMPLE\0000 WDTF_TARGET : INFO : - GetInterface("Podpora") WDTF_TARGET : INFO : Target: DESKTOP-2OVFH3G WDTF_TARGETS : INFO : - Dotaz("IsDevice") WDTF_TARGETS : INFO: Target: KMDFTest Device ROOT\SAMPLE\0000 WDTF_TARGETS : INFO : - GetRelations("below-or-self/","IsDevice") WDTF_TARGETS : INFO: Target: KMDFTest Device ROOT\SAMPLE\0000 WDTF_TARGETS : INFO : - GetInterfacesIfExist("SimpleIOStressProc") WDTF_SIMPLE_IO : INFO : - Pro Target:KMDFTest Device ROOT\SAMPLE\0000 nebylo nalezeno žádné jednoduché vstupně-výstupní rozhraní. WDTF_SIMPLE_IO: INFO : - Pro Target:KMDFTest Device ROOT\SAMPLE\0000 WDTF použije jakékoli jednoduché IO rozhraní.

Další podrobnosti najdete v konfiguraci připojených souborů a souborech protokolu. WDTF_TARGETS : INFORMACE : Cíl: KMDFTest Device ROOT\SAMPLE\0000 WDTF_TEST : INFORMACE: Provést 1 cyklus ukončení vstupně-výstupních operací WDTF_TEST : INFORMACE: Cyklus ukončení vstupně-výstupních operací #1 WDTF_SIMPLEIO_STRESS_PROC : INFORMACE : - StartAsync(KMDFTest Device ROOT\SAMPLE\0000 ) WDTF_SIMPLEIO_STRESS_PROC : INFORMACE : - WaitAsyncCompletion(KMDFTest Device ROOT\SAMPLE\0000 ) WDTF_SIMPLE_IO : INFORMACE : - Pro Cíl: KMDFTest Device ROOT\SAMPLE\0000 nebylo nalezeno žádné jednoduché vstupně-výstupní rozhraní. WDTF_SIMPLE_IO : INFORMACE : - Pro Cíl: KMDFTest Device ROOT\SAMPLE\0000 WDTF použije jednoduché vstupně-výstupní rozhraní typu ANY. WDTF_SIMPLE_IO : INFORMACE : - Open(KMDFTest Device ROOT\SAMPLE\0000 ) Pokus č. 1 WDTF_SUPPORT : INFORMACE : - WaitForMinutes : 1 WDTF_SIMPLE_IO : INFORMACE : - PerformIO(KMDFTest Device ROOT\SAMPLE\0000 ) Počet 1 WDTF_SIMPLEIO_STRESS_PROC : INFORMACE : - Ukončit proces KMDFTest Device ROOT\SAMPLE\0000

Testování všech zařízení konkrétní třídy zařízení:

Například Třída=CDROM otestuje všechna zařízení CDROM třídy.

Například ClassGUID= {36fc9e60-c465-11cf-8056-444553540000} otestuje všechna zařízení, jejichž identifikátor GUID třídy odpovídá zadanému identifikátoru GUID. V tomto případě je identifikátor GUID pro třídu USB.

DoPoolCheck

Ano nebo ne Monitoruje používání stránkovaných a nestránkovaných systémových paměťových fondů ovladačem pomocí značek fondů a seznamů volného místa. Tato možnost také monitoruje změny počtu zpracovaných výjimek, které můžou znamenat chyby při zpracování výjimek.

ChangeBufferProtectionFlags

Ano nebo ne Změní příznaky ochrany paměti vyrovnávacích pamětí předaných do testovaného zařízení. Příznaky ochrany paměti se střídají mezi bez přístupu, jen pro čtení a jen pro čtení s ochranou stránky.

DoSimpleIO

Ano nebo ne Spustí se simpleI/O (pokud se najde) na testovacích zařízeních před a po provedení operací PNP.

DoConcurrentIO

Ano nebo ne Používá souběžné vstupně-výstupní rozhraní WDTF k odesílání vstupně-výstupních požadavků do cílových zásobníků zařízení při provádění operací PnP.

FillZeroPageWithNull

Ano nebo ne Namapuje nulovou stránku a vyplní ji hodnotami NULL. Tento test identifikuje ovladače, které před dereferencí ukazatele neověřují odkaz na ukazatel.

FuzzTestPeriod

Doba trvání fuzz testu v minutách.

HPU

Určuje procento vysokého využití procesoru.

Vydávat se za

Ano nebo ne Spustí test jako uživatel bez oprávnění správce.

IoPeriod

Určuje vstupně-výstupní období v minutách.

IoType

Určuje typ V/V zátěžového testu: SimpleIOStressEx nebo SimpleIOStressProc (vstupně-výstupní operace v samostatném procesu).

LPU

Určuje procento nízkého využití procesoru.

MaxInBuffer

Určuje maximální velikost vstupních vyrovnávacích pamětí v bajtech, které test předává ovladači pomocí FSCTL (nebo IOCTL pro testy IOCTL).

MinInBuffer

Určuje minimální velikost vstupních vyrovnávacích pamětí v bajtech, které test předá ovladači ve FSCTLs (nebo IOCTLs pro testy IOCTL).

MaxOutBuffer

Určuje maximální velikost výstupních vyrovnávacích pamětí v bajtech, které test předá ovladači v rámci FSCTL (nebo IOCTL pro testy IOCTL).

MinOutBuffer

Určuje minimální velikost výstupních vyrovnávacích pamětí v bajtech, které test v rámci FSCTLs (nebo IOCTLs u testů IOCTL) předává ovladači.

MaxRandomCalls

Určuje maximální počet volání, které test vydá.

MaxTailoredCalls

Určuje maximální počet volání, která test provede během přizpůsobeného náhodného testu.

MaxDeviceType

Určuje maximální hodnotu pole DeviceType v sadě FSCTLs (nebo IOCTLs pro testy IOCTL). Maximální možná hodnota je 65535.

MinDeviceType

Určuje minimální hodnotu pole DeviceType v FSCTLs (nebo IOCTLs pro IOCTL testy). Minimální možná hodnota je 0.

MaxFunctionCode

Určuje maximální hodnotu pole FunctionCode v rámci FSCTLs (nebo IOCTLs pro testy IOCTL). Maximální možná hodnota je 4095.

MinFunctionCode

Určuje minimální hodnotu pole FunctionCode v FSCTLs (nebo IOCTLs pro testy IOCTL). Minimální možná hodnota je 0.

PU

Určuje procento využití procesoru.

PingPongPeriod

Určuje dobu ping pongu v minutách; doba, po které se procesor střídá mezi vysokou úrovní využití procesoru (HPU) a nízkou úrovní využití procesoru (LPU).

ResumeDelay

Doba zpoždění (v sekundách) po obnovení počítače z režimu spánku a před spuštěním dalšího V/V cyklu. Doba zpoždění je nutná k tomu, aby zařízení obnovila svůj pracovní stav (obnovte IP adresu pro síťovou kartu atd.).

TestCycles

Určuje počet cyklů testů (iterací), které se mají provést.

WDTFREMOTESYSTEM

Tento parametr se vyžaduje jenom v případě, že zařízení pod testem nebo jedním z podřízených zařízení je kabelový síťový adaptér, který nemá adresu brány IPv6. Pokud je tento parametr v síti povinný, musíte zadat adresu IPv6, kterou testovací síťový adaptér může otestovat pomocí příkazu ping k otestování sítě.

Příklad: fe80::78b6:810:9c12:46cd

Wpa2PskAesSsid

Tento parametr je vyžadován pouze v případě, že je testované zařízení nebo některé z jeho podřízených zařízení WiFi adaptérem. Zadejte SSID sítě WPA2 AES WiFi, kterou test může použít k otestování adaptéru Wi-Fi.

Výchozí hodnota: kitstestssid

Wpa2PskPassword

Tento parametr je vyžadován pouze v případě, že je testované zařízení nebo některé z jeho podřízených zařízení WiFi adaptérem. Zadejte heslo sítě WPA2 AES WiFi, která je určena pomocí parametru Wpa2PskAesSsid.

Výchozí hodnota: heslo

Testy nástrojů

Zkouška Popis

Zobrazovací zařízení, která mají moduly plug-in WDTF Simple I/O

Parametry : Žádné

Zobrazení zařízení s povoleným ověřovatelem ovladačů

Parametry : Žádné

Zobrazovací zařízení

Parametry : Žádné

Ověřitel ovladače

Zkouška Popis

Zakázat Ověřovač ovladačů

Zakáže nástroj Driver Verifier na testovacím počítači.

Parametry : Žádné

Povolení ověřovatele ovladačů

Tento test můžete použít k povolení ověření ovladače pro všechny ovladače zařízení (nebo zařízení) na testovacím počítači.

Parametry: – Viz Možnosti ověřovatele ovladačů.