views:

740

answers:

3

Hello,

We are developing file system filters and we need to automate the testing on all platforms we are targeting (Windows, OS X, Linux). What tools would you recommend that will check if a particular mounted file system behaves properly.

Here the word "properly" probably needs some clarification: Since we are developing filters (not a new file system) the behavior should be the same as the underlying file system (NTFS, HFS+, XFS). So the tools need to check not only basic operations (open/read/write/close/dir) but also OS and file system specific features like resource forks on HFS, streams on NTFS, security attributes, etc.

Thanks in advance, KIV

+1  A: 

fsx "File System Exerciser" is well known as a stress test for file systems. LTP "Linux Test Project" has a bunch more tests, some of which also exercise the file system.

Aside from xfstests, I don't see anything that exercises features of specific filesystems. diskdev_cmds (containing Apple's filesystem utilities) doesn't have any tests. NetBSD/src/tests/fs/ffs is nearly empty. e2fsprogs contains a bunch of bad disk images, but no special tests.

Heck, do ext[2-4] and ffs even have any "special features"? xfstests does exercise features like preallocate, but that's portable to other filesystems these days.

I'd just hack stuff on top of fsx as needed. There's not that many "special features" out there.

ephemient
fsx we already use (sorry for not mentioning in the original question)Thanks a lot for the LTP hint - I will check it outWindows is still an issue
KIV
A: 

For OS X, I'd look at Backup Bouncer. It's not quite what you want -- it's designed to test backup systems to see if they preserve all the kinds of file metadata and such that OS X supports. But you could find a backup program that scores 100%, and see if it still scores 100% when running through your filter...

Gordon Davisson
A: 

The Open-Source Project NTFS-3G for NTFS driver on Unix platforms, has developed a POSIX file system test suite to check the POSIX compliance of different filesystems on these platforms with more than 3000 regression tests for different commands.

dmeister