单元测试时引用文件

有这样一个类,用来验证用户上传的excel文件的合法性,那么来做这个类的单元测试,这里的单元测试是用的VS自带的测试框架,没有用NUnit等第三方的测试框架。

步骤如下:

1.在测试项目中增加一个excel文件,以模仿用户上传的excel

2.设置此excel文件的属性 "复制到输出目录"为"始终复制",“生成操作”为“内容”

3.代码

        [TestInitialize()]
   public void MyTestInitialize()
    {
      string fileName = Path.Combine(Environment.CurrentDirectory, "SiteTemplate.xls");
      _sites = ExcelHelper.ImportToDataTable(fileName);
    }

    [TestMethod()]
    [DeploymentItem("ExcelTemplate/SiteTemplate.xls")]
    public void ValidateTest()
    {
      SitesValidator target = new SitesValidator(_sites);
      Boolean valid = target.Validate();
      Console.WriteLine(target.Message);
      Assert.IsTrue(valid);
    }

如果此处不指定DeploymentItem,则excel文件只会复制到测试项目的bin目录下,但不会生成到实时测试TestResult的out目录下,
所以这个属性非常必要

你可能感兴趣的:(单元测试时引用文件)