我有一个CSV文件,我添加到Visual Studio单元测试项目中。它有七列,看起来像这样:
assessmentitemid,reviewer1,reviewer2,reviewer3,reviewer4,reviewer5,reviewer6
我的测试方法如下:
[TestMethod]
[DeploymentItem("IntraclassCorrelationValues.csv")]
[DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV", "|DataDirectory|\\IntraclassCorrelationValues.csv", "IntraclassCorrelationValues#csv", Microsoft.VisualStudio.TestTools.UnitTesting.DataAccessMethod.Sequential)]
public void TestMethod1() {
object val = TestContext.DataRow["assessmentitemid"];
}
访问列evaluateitemid时出现错误。我检查了表格,除了assessmentitemid以外,所有列都已正确映射。它的实际列名是:
assessmentitemid
我是否还需要对DataSource属性执行其他操作才能正确解析CSV文件?
答案 0 :(得分:6)
看起来.csv文件可能具有Unicode编码。
尝试在记事本中打开它并在“另存为”下,选择UTF-8或ANSI。
答案 1 :(得分:0)
这看起来像是数据文件的问题。
更改源CSV文件中的字符编码并重新保存,我认为这样可以解决问题。
答案 2 :(得分:0)
这看起来像是一个unicode字节顺序标记。