繁体   English   中英

使用相同文件资源的Visual Studio 2008单元测试

[英]Visual Studio 2008 unit testing using the same file resource

我正在使用Visual Studio 2008的内置单元测试框架来熟悉C#WinForms应用程序的TDD。 该应用程序使用专有的图像数据格式,并且我将示例文件分解为它们的组成部分(标题,元数据,单个帧,所有帧等)以进行测试。 我的几种测试方法都使用相同的数据块,并且当我选择“在解决方案中运行所有测试”选项时,使用相同数据块的测试将失败,并显示“ System.IO.IOException:进程无法访问文件'datachunk.dat” “因为它正在被另一个进程使用。” 这些测试在单独运行时通过。 有没有一种方法可以告诉Visual Studio不要同时尝试运行这些测试,还是我会以错误的方式进行操作?

在测试需要之前,使用初始化方法加载“块”。 然后,您可以在测试之间反复使用相同的“块”。

您还可以将逻辑封装到其自己的方法中,并确保在命中该方法之间破坏读者。

和平与优雅,格雷戈里·比默

TestInitialize函数中读取一次,读入一个字段,因此该类可用于该类中的所有测试。

我可以建议几件事:

  1. 打开文件时检查是否可以更改标志。 实际上,您应该将其打开以共享以供阅读。
  2. 将文件的完整内容读取到字节数组中,然后将其用作测试中的源。 那真的没有太大变化。
  3. 使用共享资源并TestInitialize。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM