我打算构建一个应用程序,它将以深度优先搜索的方式抓取本地文件系统(子树)的一部分,并处理它找到的所有文件,除了一些可配置的例外。抓取本地文件系统 - 如何测试
举个例子,假设我有一个这样的目录结构:
> documents
- generic-doc.txt
> mails
- mail-01.txt
- mail-02.txt
- mail-03.txt
> unread
- mail-04.txt
> invoices
> paid
- invoice-01.pdf
- invoice-02.pdf
> unpaid
- invoice-03.pdf
我也有一个排除规则是这样的:
exclude = "documents/mails/unread | documents/invoices"
鉴于这些数据输入,我的申请会处理以下文件:
- 仿制doc.txt
- 邮件-01.txt
- 邮件-02.txt中
- 邮件-03.txt
(例如它会处理所有文件,但位于文档/邮件/未读和文档/发票文件夹中的文件除外)
将来,我可能需要实现各种形式的exlusion规则。
什么是测试爬行模块的实现的最佳途径(例如,鉴于排除规则时,该模块将返回一组正确的文件)?可以在不使用真正的文件系统的情况下完成吗?
你能发布一个链接到Java 7上下文中的“虚拟”文件系统的实现吗? –
@DavidSoroko我开始了,但实现了一些很多方法。 ;) –
然后,有:http://docs.oracle.com/javase/7/docs/technotes/guides/io/fsp/zipfilesystemprovider.html –