unit testingVS 2008使用Excel

当使用Excel(2003)为我的unit testing提供数据时,似乎认为当单元格具有TRUE / FALSE值时,如果没有先前的单元格值,则为空

if (TestContext.DataRow["SatisfactionExtremelySatisfied"] != DBNull.Value) model.SatisfactionExtremelySatisfied = (bool)TestContext.DataRow ["SatisfactionExtremelySatisfied"]; 

示例Excel数据

 DataRow SatisfactionExtremelySatisfied 0 1 2 TRUE 3 TRUE 

使用OLEDB读取testing数据时,带有TRUE的单元不包含任何值(当在debugging中进行检查时),但当前面的单元格具有值FALSE时,正确地获得值TRUE。

我错过了什么吗?

简化。

将Excel电子表格保存为纯文本.csv文件,并让您的testing框架读取该文件。 否则,通过对从Excel读取的细微差别进行故障排除,您的testing变得复杂了。