如何创建仅在手动指定时运行的unit testing?

我记得像’ 明确 ‘这样的东西,谷歌说nunit有这样的属性。 Microsoft.VisualStudio.TestTools.UnitTesting是否提供类似这样的内容?

MSTest工具不在属性级别明确支持此类行为。 在属性级别,您可以通过TestMethod属性启用测试,也可以使用Ignore属性完全禁用它。 添加Ignore属性后,mstest将不会运行测试,直到删除它为止。 您无法通过UI覆盖此行为。

你可以做的是通过属性页面禁用测试。 打开测试列表编辑器,选择所需的测试,然后按F4打开属性页面。 将Test Enabled属性设置为false。 在您通过属性页重新启用它之前,测试现在不会运行。 这不是你想要的,但可能是最接近的等价物。

您可以使用Category属性为测试创建“手动运行”类别,然后从GUI中的测试中排除该类别。 这些测试将显示为灰色,您可以随时将它们放回原处。 我经常这样做是为了慢速运行测试。

我没有使用它,它看起来很旧(2008年3月),但我看到TestListGenerator声称根据你在测试中设置的属性自动生成测试列表 。 如果它有效,这将有效地提供MS测试的类别 。 虽然与Explicit不同 ,但它可以让你实现你想要的。