Unit testing NUnit:如果花费的时间太长,则中止测试
有没有一种简单的好方法可以让NUnit终止一个超过指定时间的测试Unit testing NUnit:如果花费的时间太长,则中止测试,unit-testing,nunit,Unit Testing,Nunit,有没有一种简单的好方法可以让NUnit终止一个超过指定时间的测试 理想情况下,它不仅会杀死运行测试的应用程序域,还会杀死启动测试的所有子进程。如果您使用的是NUnit 2.5,则可以使用该属性在指定时间后使测试失败。不幸的是,您将需要自己清理所有资源-例如,在TearDown方法中,检查进程是否正在运行并杀死它们等等。这看起来像是一种测试气味。在我看来,通过设置超时,你可以尝试对抗一种症状。单元测试应快速且可重复(速度也应如此) 为什么考试要花这么长时间?它甚至是随机的“花费很长时间”(有时执行
理想情况下,它不仅会杀死运行测试的应用程序域,还会杀死启动测试的所有子进程。如果您使用的是NUnit 2.5,则可以使用该属性在指定时间后使测试失败。不幸的是,您将需要自己清理所有资源-例如,在TearDown方法中,检查进程是否正在运行并杀死它们等等。这看起来像是一种测试气味。在我看来,通过设置超时,你可以尝试对抗一种症状。单元测试应快速且可重复(速度也应如此)
为什么考试要花这么长时间?它甚至是随机的“花费很长时间”(有时执行速度很快,有时不是) 他说,儿童的过程。我猜一个子进程正在以一种他不容易发现的方式失败。目前它总是需要一段时间。在修复之前(这需要时间),我可以禁用它,或者让它在超时时失败。关键是,如果时间太长,测试就会失败--它会让单元测试快速运行--如果某个代码有一个无限循环--不管一切有多快,您希望该代码快速失败,而不是挂起构建服务器……如果NUint3超时,则不会执行拆卸