无法读取数据驱动测试的csv文件的第一列.Visual Studio 2017.



我正在自动生成(通过SourceText类(一个csv文件,用于数据驱动测试(vstest(,使用UTF-8编码。测试上下文找不到第一列标题,它总是抛出异常,

System.ArgumentException: 列 'IsProductCreated' 不属于 桌子。

如果我在每行的开头手动添加一个虚拟列,则测试有效。

测试上下文设置:

[TestMethod]
[DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV", "9C118DF7_AssignMaterialsToProductionOrderWhenNotReleased.csv", "9C118DF7_AssignMaterialsToProductionOrderWhenNotReleased#csv", DataAccessMethod.Sequential), 
DeploymentItem("..\..\MaterialAndContainer\MaterialManagementTest\_TestData\9C118DF7_AssignMaterialsToProductionOrderWhenNotReleased.csv")]

使用示例:

productionOrderScenario.IsProductCreated = (DataDrivenReader.ReadBool(TestContext.DataRow["IsProductCreated"]));

我做错了什么?

我显式地将SourceText实例的编码更改为Encoding.Default。这让它工作了。在我看来,编码默认不是,好吧,默认...没有编码让我尝试其他编码,UTF8 似乎是正确的编码,但事实并非如此。

最新更新