0

我已经为一个长时间运行的过程编写了一个测试。完成后,我会在测试结果中显示以下内容:

Test Run: [blah]
Test Name: PopulateDataTest
Result: Passed
Duration: 00:03:17.0017261
Computer Name: [name here]
Start Time: 3/8/2011 12:54:18 PM
End Time: 3/8/2011 1:02:31 PM

对开始日期和结束日期进行一些数学运算,我得到大约 8 分钟,而不是 3 分钟。我错过了什么?

4

2 回答 2

1

除了@Matt Spinelli 所说的之外,我怀疑报告的持续时间值还反映了 CPU 实际执行测试所花费的时间,而不是测试的结束时间 - 开始时间。也就是说,我认为 CPU 时间是报告的指标,因为这是更重要的事情。如果您的计算机在测试期间碰巧开始更新 Adob​​e Acrobat(或其他),那么这可能会不适当地反映在结束时间 - 开始时间值中。

另一方面,我对 Visual Studio 测试框架知之甚少。例如,我不知道测试机制将如何处理多线程进程的执行时间。所以从我这里来,这一切都只是猜测。

于 2011-03-08T22:08:55.363 回答
0

每次运行测试套件时,MSTest 都会进行一些初始化(即为测试运行创建文件夹、复制文件/程序集、启动和更新单元测试窗格等)。

我同意这很烦人,因为我也看到过这种行为。我想你有相当多的测试、文件和/或程序集。如果您使用的是 Microsoft Moles,这似乎也会减慢启动速度。

于 2011-03-08T21:32:05.323 回答