IFS Test
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
Type: Automated Test
Overview
The installable file system test suite verifies whether the behavior in the file system stack is consistent with the File System Behavior Overview. This is a regression test suite.
More information about File System Behavior is available at https://download.microsoft.com/download/4/3/8/43889780-8d45-4b2e-9d3a-c696a890309f/File%20System%20Behavior%20Overview.pdf.
Details
Documentation for the test variations can be found at https://msdn.microsoft.com/library/ff563405(VS.85).aspx
**Run Time:**1 hour
Log File:
Ifstest-Local-NtfsResults.log
Ifstest-Local-CntfsResults.log
Ifstest-Local-Fat16Results.log
Ifstest-Local-Fat32Results.log
Ifstest-Local-ExFatResults.log
Ifstest-Local-UDFResults.log
System Restart Required: Yes
**Test Category:**Kernel Mode Filter Drivers
Supported operating systems for Logo or Signature testing:
Windows 7 SP1
Windows Server 2008 R2 SP1
Program: IFSTest.exe
Requirements
Software Requirements
The test tool requires the following software:
- Supported operating system (see list above)
- Filter driver to be tested, along with any supporting application suite
Hardware Requirements
- Computer that meets the minimum software requirements
- Windows keyboard
- Two-button pointing device
- Color display monitor capable of at least 1024 by 768 resolution, 32-bits per pixel, 60 Hz
- Hard drive with a minimum of 20 GB available on partition C:
- Extra hard drive space for four simple 2048 mb partitions and two simple 1024 mb partitions
Processor
The test tool runs on the following processor architectures:
- x86
- x64
Running the Test
Before running the test, the following partitions need to be added to the Windows environment:
Label | File System | Size | Expected Drive Letter |
NTFS | ntfs | 2048mb | g: |
CNTFS | ntfs (compressed) | 2048mb | i: |
FAT | Fat16 | 1024mb | k: |
FAT32 | Fat32 | 1024mb | l: |
ExFAT | ExFat | 2048mb | m: |
UDF | UDF | 2048mb | n: |
When executed, the test will run variations for each of the six partitions above.
All test cases return PASS or FAIL. Review the test results in the log file for specific details about failures.
If there is a policy on the test system of locking out new accounts, the IFS test might return "blocked" on the multiprocess variations if the local machine account "ifstest" is locked out.
Please use account manager to unlock the account and rerun the suite.
RunIFStest.cmd contains references to environment variables that can be changed to allow for skipping of certain file systems.
Command Syntax
Command option | Description |
---|---|
IfsTest.exe | -g Virus /n .\Ifstest-Local-NtfsResults.log /N 356789AB /T /p /m /E /j /r c: -d \Ntfs -a \datacoh.exe /u ifstest /U *rw53w5 |
-g <suitename> | Do not run <suitename> |
/n <logname> | Create a long of name <logname> |
/N | Specify NTLOG levels. If not included, then the GUI dialog box appears. This is useful in a batch mode run of the test NTLOG Levels: 1 ABORT 2 SEV1 3 SEV2 4 SEV3 5 WARN 6 PASS 7 BLOCK 8 INFO 9 SYSTEM INFO A DEBUG INFO B TEST |
/T | Enable trace of tests being done |
/p | Enable pagefile testing in CreatePagingFileTest |
/m | Enable dirty bit testing in MountedDirtyTest |
/E | Enable AllowExtendedDASDTest |
/j | Enable support for tests involving the change journal |
/r <volumeletter> | Path to second volume required in certain tests |
-d <> | System Path to FSD device object in FileSystemDeviceOpenTest. |
-a | Provide path to executable |
/u | Username for test account |
/U | Password for test account |
/t <variation> | Execute only one named variation |
Troubleshooting
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
The tests should be able to create a temporary local machine account (ifstest). They also expect to have additional partitioned volumes.
Use a tool such as minispy to see what irps are traveling on the file system stack. Compare passing (default Windows install) with installs, including any failing driver.
For information about File System Behavior, go tohttps://download.microsoft.com/download/4/3/8/43889780-8d45-4b2e-9d3a-c696a890309f/File%20System%20Behavior%20Overview.pdf.
For documentation about the test variations, go tohttps://msdn.microsoft.com/library/ff563405(VS.85).aspx
Code Tour
File Manifest
File | Location |
---|---|
ntlog.dll | [WTT\TestBinRoot]\NTTest\CommonTest\Ntlog\ |
ntlogger.ini | [WTT\TestBinRoot]\NTTest\CommonTest\Ntlog\ |
chg.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
chgfile.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
chgnotif.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
cleanupfiles.cmd | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
closedel.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
createkc.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
datacoh.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
decrypt.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
defrag.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
devctrl.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
dirinfo.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
dirpt.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
eainfo.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
encrypt.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
encryptvirus.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
enum.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
esecurit.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
estream.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
fileinfo.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
filelock.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
forcedis.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
fsctlgen.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
fsctlvol.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
IFSCFG.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
ifsmsg.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
ifstest-av.cmd | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
ifstest-av_wdk.cmd | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
ifstest.cmd | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
ifstest.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
ifstestcleanup.cmd | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
ifstest_storagelogo.cmd | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
ifstest_wdk.cmd | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
ishell.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
linkpt.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
linktrak.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
mfile.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
mountpt.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
objectid.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
opcreatg.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
opcreatp.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
oplocks.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
quotas.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
readwr.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
reparspt.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
ResetAutoLogon.vbs | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
restoresystem.cmd | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
seccache.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
securit.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
setupsystem.cmd | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
skel.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
sparse.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
virus.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
volinfo.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
writevirus.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
xchg.exe | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
guidefile.dat | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\virusfiles\ |
virusfile1.evf | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\virusfiles\ |
virusfile2.evf | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\virusfiles\ |
virusfile3.evf | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\virusfiles\ |
virusfile4.evf | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\virusfiles\ |
createwttlog.vbs | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\LFS_Automation\common\ |
chgjourn.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\IFS_TEST_KIT\ |
fbslog.dll | [WTT\TestBinRoot]\NTTest\basetest\core_file_services\shared_libs\fbslog\ |
RunIFSTests.cmd | [WTT\TestBinRoot]\NTTest\BASETEST\Core_File_Services\FilterManager\TestSuite\Scripts\FileSystems\ |
WrapIFSTests.cmd | [WTT\TestBinRoot]\NTTest\BASETEST\Core_File_Services\FilterManager\TestSuite\Scripts\FileSystems\ |
attachfilter.cmd | [WTT\TestBinRoot]\NTTest\BASETEST\Core_File_Services\FilterManager\TestSuite\Scripts\FileSystems\ |
Test Assertions
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
The tests expect the partitions to be in place.
Build date: 9/14/2012