我有以下(使用NUnit):
[TestFixture]
public class SmokeTest : BaseTest
{
[Test(SmokeTest)]
public void ShouldAlwaysRun()
{
//Tests,Assertions,etc
}
[Test]
public void ShouldNotRunIfSmoke()
{
//Tests,Assertions,etc
}
}
我的项目每个功能区都有一个TestFixture。我希望能够运行“冒烟测试”,只运行那些标记为“SmokeTest”的测试(可能是通过属性)。我最初在他们自己的文件中进行了冒烟测试,但实际上正在复制并将其他测试粘贴到该文件中 - 我想保留DRYer。
最终目标是我可以以某种方式识别我何时进行烟雾测试,以便:
如何使用NUnit实现这一目标?
编辑:我刚刚找到类别:http://www.nunit.org/index.php?p=category&r=2.2.10
这会很棒 - 但是如何从Test Explorer或Build Configs中指定何时只运行某个类别?我会留下问题,以防万一有更好的方法。
答案 0 :(得分:0)
可以通过使用控制台运行程序的/ include和/ exclude参数以及单独的"类别"来访问此功能。 gui中的标签。
因此,您只需在GUI NUnit test runner&控制台试验跑步者其他类别(以及没有cetegories的测试)将被禁用。
不确定Visual Studio Test Explorer(我认为你的意思是VS)是否支持NUnit类别
但是你绝对可以在构建配置中指定/include MyCategory
参数来运行所有测试的子集。
答案 1 :(得分:0)
使用ReSharpers Testrunner时,会有一个“选项”下拉列表,您可以按类别对测试进行分组。