DF - 模糊隨機 IOCTL 測試 (可靠性)
在隨機測試期間,模糊測試會使用函式代碼、裝置類型、資料傳輸方法和從指定值範圍隨機選取的存取需求,發出 DeviceIoControl 函式的一系列呼叫。 呼叫包括輸入和輸出緩衝區,其有效和不正確緩衝區指標和長度,以及隨機產生的內容。
模糊測試會在 基本開放式測試 和其他開啟測試期間開啟的所有裝置上執行隨機測試。 您可以使用下列參數來自訂此測試:
- 使用 MinFunctionCode 和 MaxFunctionCode 來指定呼叫中使用的 IOCTL 或 FSCTL 函式程式碼範圍
- 使用 MinDeviceType 和 MaxDeviceType 來指定呼叫中使用的裝置類型範圍
- 使用 SeedNumber 指定亂數產生常式的種子編號。
模糊測試用來為測試產生亂數的函式會使用 種子編號,這是亂數產生演算法的起始數位。 若要重現測試條件,請使用種子編號參數來指定原始測試試用版中使用的種子編號。
量身訂做隨機測試包含在隨機測試中。 量身打造的隨機測試會使用隨機測試結果,更詳細地檢查驅動程式對 FSCTL 要求的回應。 量身打造的隨機測試會探查隨機測試遺漏的區域,以及驅動程式未根據隨機測試呼叫傳回的狀態如預期回應的區域。
測試二進位檔: Devfund_FuzzTest.dll 測試方法: DoRandomFSCTLTest
測試詳細資料
規格 |
|
平台 |
|
支援的版本 |
|
預期的執行時間 (以分鐘為單位) | 15 |
類別 | 案例 |
以分鐘為單位的逾時 () | 180 |
需要重新開機 | false |
需要特殊設定 | true |
類型 | automatic |
其他檔
此功能區域中的測試可能會有其他檔,包括必要條件、設定和疑難排解資訊,可在下列主題中找到 () :
執行測試
執行測試之前,請先完成測試設定,如測試需求中所述: Device.Fundamentals 可靠性測試必要條件。
疑難排解
如需 HLK 測試失敗的一般疑難排解,請參閱 針對 Windows HLK 測試失敗進行疑難排解。
如需 HLK 和 WDK 中裝置基本概念測試的特定疑難排解資訊,請參閱 Device.DevFund 其他檔。
詳細資訊
參數
參數名稱 | 參數描述 |
---|---|
DQ | WDTF SDEL 查詢,用來識別目標裝置 () - https://go.microsoft.com/fwlink/?LinkId=232678 |
Wpa2PskAesSsid | 只有在 DUT 或其其中一個子裝置是 WiFi 配接器時才需要。 請提供 WPA2 AES WiFi 網路的 SSID,讓測試可用來測試 WiFi 配接器。 預設值為 'kitstestssid'。 |
Wpa2PskPassword | 只有在 DUT 或其其中一個子裝置是 WiFi 配接器時才需要。 請使用 Wpa2PskAesSsid 參數指定之 WPA2 AES WiFi 網路的密碼。 預設值為 'password'。 |
ChangeBufferProtectionFlags | 是非題。 變更傳遞至測試裝置之緩衝區的記憶體保護旗標。 記憶體保護旗標會在沒有存取權、唯讀和唯讀之間替代,並使用頁面防護。 |
Impersonate | 是非題。 以非系統管理使用者身分執行測試。 |
FillZeroPageWithNull | 是非題。 對應零頁,並填入 Null 值。 此測試會識別在取值指標之前未驗證指標參考的驅動程式。 |
DoPoolCheck | 是非題。 使用集區標籤和 lookaside 清單,監視驅動程式使用分頁和非分頁系統記憶體集區。 此選項也會監視所處理之例外狀況數目的變更,這可能表示例外狀況處理中的錯誤。 |
DoSync | 是非題。 也會在同步模式中開啟裝置控制碼 (FILE_SYNCHRONOUS_IO_ALERT) 。 會略過隨機讀取和寫入作業。 |
TestCycles | 測試週期數目。 |
DriverVerifierAdditionalDrivers | 應啟用驅動程式驗證程式的其他驅動程式 |
DriverVerifierExcludedFlags | 可能針對測試回合手動排除的驅動程式驗證器旗標預留位置 |
WDKDeviceID | 受測裝置的裝置識別碼 |
QueryHardwareID | 受測裝置的硬體識別碼 |
WDTFREMOTESYSTEM | 只有在 DUT 或其其中一個子裝置是沒有 IPv6 閘道位址的有線 NIC 時才需要。 如果判斷為必要,請提供測試 NIC 可以 Ping 的 IPv6 位址,以測試網路 I/O。 例如:fe80::78b6:810:9c12:46cd |
DriverVerifierCustomizeConfiguration | 指定此測試可能想要自動更新驅動程式驗證器設定 |
MinDeviceType | 指定 IOCTLs 中 DeviceType 欄位的最小值。 可能的最小值為 0。 使用 -1 進行自動類型偵測, (慣用) 。 |
MaxDeviceType | 指定 IOCTLs 中 DeviceType 欄位的最大值。 可能的最大值為 65535。 使用 -1 進行自動類型偵測, (慣用) 。 |
MinFunctionCode | 指定 IOCTLs 中 FunctionCode 欄位的最小值。 可能的最小值為 0。 |
MaxFunctionCode | 指定 IOCTLs 中 FunctionCode 欄位的最大值。 可能的最大值為 4095。 |
MinInBuffer | 指定測試在 IOCTLs 中傳遞至驅動程式的輸入緩衝區大小下限,以位元組為單位。 |
MaxInBuffer | 指定測試在 IOCTLs 中傳遞至驅動程式的輸入緩衝區大小上限,以位元組為單位。 |
MinOutBuffer | 指定測試在 IOCTLs 中傳遞至驅動程式的輸出緩衝區大小下限,以位元組為單位。 |
MaxOutBuffer | 指定測試在 IOCTLs 中傳遞至驅動程式的輸出緩衝區大小上限,以位元組為單位。 |
MaxRandomCalls | 指定測試所發出的呼叫數目上限。 |
MaxTailoredCalls | 指定量身訂做隨機測試期間測試問題的最大呼叫數目。 |
SeedNumber | 指定用來產生隨機 IOCTL 的種子編號。 |