我有一个问题,在一台计算机上比较日期失败,而另一台计算机过去了。我正在使用Assert.AreEqual:
Assert.AreEqual(Convert.ToDateTime(tableValue).Date,
Convert.ToDateTime(detailsValue).Date);
,我要比较的日期是“ 10/07/2018 04:17:02”和“ 10/07/2018”。 这是从同一仓库中克隆的同一项目。我认为这与文化设置有关,但我无法解决。有谁知道原因可能是什么?
答案 0 :(得分:0)
感谢您的重播。这是我得出的结论:
Assert.AreEqual(Convert.ToDateTime(tableValue).**Date**,
Convert.ToDateTime(detailsValue).**Date**);
在一台计算机上,Date仅考虑了日期部分(这就是为什么通过),而在另一台计算机上,它考虑了日期和时间(这就是为什么失败)。不知道为什么。 但是当我将其更改为:
Assert.AreEqual(Convert.ToDateTime(tableValue).**Seconds**,
Convert.ToDateTime(detailsValue).**Seconds**);
它以秒为单位进行计算,因此每次都应出现故障,从而解决了我的问题。