防止TestContext数据自动转换

时间:2011-03-04 11:56:21

标签: c# .net coded-ui-tests

我通过使用从.csv文件读取的数据来参数化我的测试用例。 csv文件中的一列具有美国格式的简单日期值(作为常规字符串),例如mm/dd/yyyy。但是,当实际读取数据并将其填充到TestContext时,TestContext.DataRow["MyDateColumn"]实际上会返回已转换的System.DateTime对象,并且时间戳为12:00:00 AM。我绝对不需要或想要这种自动转换。我该如何阻止这种情况发生?

4 个答案:

答案 0 :(得分:2)

如果MyDateColumn的类型设置为datetime,那么它将/应该返回一个datetime对象。

尝试将MyDateColumn的类型更改为字符串,看看是否有效。

<强>更新

更改CSV中的日期,使其为“mm / dd / yyyy”而非mm / dd / yyyy。

答案 1 :(得分:0)

DateTime.Parse(TestContext.DataRow["MyDateColumn"], CultureInfo.InvariantCulture).ToShortDateString()

答案 2 :(得分:0)

我得到了解决方案:)

我只是把&#39;在实际数据之前。当我检索数据时,数据按原样出现。在使用它之前,我删除了&#39;来自带子串方法的数据。

我记得在excel上使用这种技术使数字显示为文本。它对我有用。

答案 3 :(得分:0)

我在数据周围加了两个qoutes。这样就可以返回字符串,而不会删除引号。

columnInt, columnString
1, "11.12.89"  
2, "12.12.89"