.net单元测试项目,CSV数据源无法正确读取值

时间:2011-09-23 15:29:23

标签: .net unit-testing csv datasource

我在.net 4.0中有一个单元测试项目。其中一种测试方法读入CSV文件。不幸的是,csv文件中的某些值未被读取。我认为发生的事情是.net正在选择列的类型并忽略任何不适合该类型的值。例如,我可能有一个列,其中90%的值是数字,但另外10%是带字母的数字。带字母的数字没有通过。关于如何解决这个问题的任何想法?

这是我的测试方法

之上的属性
        [DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV", "|DataDirectory|\\test.csv", "test#csv",  DataAccessMethod.Sequential), DeploymentItem("MyProject.Tests\\TestData\\Test.csv"), TestMethod()]

谢谢! AFrieze

1 个答案:

答案 0 :(得分:0)

您需要将混合类型列中的值括在引号中。 E.g。

AllNumeric,Mixed,AllString
1,"1",a
2,"2b",b

或者,您可以在与csv文件相同的目录中创建名为Schema.ini的文件以指定类型,如下所述。 http://geekswithblogs.net/dotNETvinz/archive/2011/01/03/uploading-and-importing-csv-file-to-sql-server-in-asp.net.aspx