如何在MStest中定义测试之间的依赖关系

时间:2011-03-02 12:28:02

标签: visual-studio-2010 testing automation selenium mstest

我有一些测试取决于某些测试的成功和失败。当我使用VS2010 Mstest和selenium时,如何定义依赖项。 E.g

如果test1失败,那么不要运行test5,测试6.这是可能的。

2 个答案:

答案 0 :(得分:2)

单元测试应始终是孤立的,完全不依赖于运行的其他东西,而不是非易碎。

您可以使用MSTest设置类别,将它们分隔成不同的逻辑结构。

有关详细信息的好书是http://artofunittesting.com

Roy也有很多在线录制的公开演讲

干杯

答案 1 :(得分:1)

测试之间不应存在依赖关系。

如果您有依赖项,那么以不同的顺序运行它们,或者单独运行它们会导致它们偶尔失败 - 这对于运行测试的其他任何人来说都会非常混乱。

定义用于设置自己的数据并断言特定内容的测试要好得多。您可以使用像Rhino Mocks这样的模拟框架,通过伪造(模拟)与测试无关的区域来减少代码模块之间的依赖关系。如果您还使用dependency injection这样的Microsoft Unity框架,则会更加轻松,因为您的代码会有更多可以应用模拟的接缝。