在VS 2008/2010中订购测试

时间:2010-01-12 23:45:17

标签: visual-studio unit-testing

我正在使用VS 2010编写基本CRUD功能的单元测试。

我的目标是创建新实体,读取它们,更新它们,然后删除它们。

一种显而易见的方法是对每个操作进行单元测试,然后按顺序运行。除了我不能直接指定测试应该运行的顺序。

我知道我可以创建一个有序测试。但是,在执行此操作并选择“在解决方案中运行所有测试”之后,除了单独的测试之外,还会运行有序测试。这不是我所追求的,特别是因为无法保证单个测试的顺序......其中一些可能会“随机”失败,具体取决于它们碰巧执行的顺序。

如果我希望使用该功能,这似乎导致我必须单独执行我的有序测试。

或者我可以为每个实体编写一个C + R + U + D的大测试,但这并不像我想的那样原子。

这种类型的测试最佳实践(不使用xUnit)是什么?

1 个答案:

答案 0 :(得分:2)

您可以创建一个仅包含您要运行的有序测试的测试列表。

然而,单元测试的最佳实践是完全不依赖于测试订购。有序测试是Erratic Tests,因为如果以不同的顺序执行(您已经发现)或者作为独立测试执行而不是部署有序测试套件,它们的行为会有所不同。

帮助自己,放弃有序测试的想法。它只会导致更多痛苦。