代码之家  ›  专栏  ›  技术社区  ›  Prashant Cholachagudda

如何在NUnit中单元测试文件权限?

  •  3
  • Prashant Cholachagudda  · 技术社区  · 16 年前

    我正在尝试对文件读取操作进行单元测试。在这个场景中,我还需要确保,如果一个特定的用户没有读取权限,他应该得到一个异常。。。

    犀牛和努尼特

    3 回复  |  直到 16 年前
        1
  •  2
  •   PatrickSteele    16 年前

    您可以使用Rhino.Mocks“Do”扩展抛出特定的异常:

    public delegate void ThrowExceptionDelegate();
    mystub.Stub(x => x.ReadFile()).Do(new ThrowExceptionDelegate(delegate()
        { throw new IOException(); }
        ));
    

        2
  •  1
  •   Ruben Bartelink    16 年前

    您需要准备一个测试,它不是读取文件,而是使用抛出异常的模拟,而不是真正读取文件。然后,您可以验证是否触发了适当的处理,以及事情是否正常进行。

    如果你需要一个更好的答案,你需要给出一个你的类的例子,也许还有你到目前为止写的测试的框架。

        3
  •  1
  •   Community Mohan Dere    9 年前

    我会进行一次适当的验收测试——过多地使用mock可能有点危险。在这种情况下,以编程方式设置+取消设置文件权限很容易。

    set file permissions for c:\program files\company\app\file for all users