在文件管理应用程序中进行单元测试的内容

时间:2011-09-02 18:00:07

标签: unit-testing language-agnostic

想象一个GUI文件管理器,它递归地扫描目录结构并在其上提供不同的操作。哪些部件应进行单元测试?我只能想到一个非常小的部分,因为GUI不是可单元测试的(但是GUI可测试的)和文件系统的东西也不是单元可测试的,因为结果可能取决于使用的文件系统和文件操作很慢,单元测试太慢了。

2 个答案:

答案 0 :(得分:1)

  • 如果您在Passive View form中使用MVP(模型 - 视图 - 演示者)模式,则可以对GUI逻辑进行单元测试。您对Presenter类进行单元测试,这些类独立于您的GUI框架
  • 如果您存根/模拟您的File类,您可以对访问文件系统的代码进行单元测试。像Moq这样的模拟框架非常适合这个

答案 1 :(得分:0)

我不同意FS操作对单元测试来说太慢了。

您的GUI是否调用API调用,而API调用又会调用您的FS方法?如果是这样,您可以轻松测试您的FS API。单元测试当然可以在某个目录下创建一个test-sandbox目录并对其进行操作。

关键是让单元测试始终创建初始目录和文件结构,以便测试可重复。