编辑:笔记,问题288805是相似的,但是,我专门问我怎么做MSTest的选择默认测试顺序。请看这个问题的其余部分。谢谢Eilon的the link。MSTest如何确定运行测试方法的顺序?
我正在查看一个传统的MSTest项目。 测试总是以相同的顺序运行。 订单不是字母,而是在两个* .cs TestMethod文件中的方法之间弹跳 。
我没有更改旧版 代码的物理顺序。为了方便起见,我在第一次测试的方法名称上追加了“MSTest01” ,第二次测试的方法名称为“MSTest02”, 方法名称等。
令我吃惊的是,TestMethod 功能的执行顺序改变了; #3第一,#6秒,#5第三, 等等。
当我删除从 TestMethod的函数名的“MSTestnn”的字符串,它们的执行顺序 从 改回以前的顺序,即从第一个cs文件 一个测试,两次测试第二的.cs文件,来自第一个 .cs文件的五个测试,等等。
看来,文件的位置可能不是一个因素 而TestMethod的函数名可能是一个因素。
问题:任何人都可以解释MSTest如何决定TestMethod函数的执行顺序吗?
通常,您不应该关心单元测试运行的顺序。这就是说,这是一个有趣的问题。 – Mathias 2010-02-12 21:49:56
@ Mathias 我同意。我喜欢xUnit.net以随机顺序运行测试的方式。随机顺序是最好的选择,因为它可能会揭示不应该存在的顺序依赖关系。看看我对特洛伊的评论。 – gerryLowry 2010-02-12 22:16:26
?奇怪的是,我对特洛伊的评论似乎已经消失,连同他的问题。 F.Y.I. – gerryLowry 2010-02-15 15:26:29