【问题标题】:Mstest Run ignored tests in VSMstest 在 VS 中运行忽略的测试
【发布时间】:2017-12-01 04:00:08
【问题描述】:

我创建了许多长期运行的集成测试。它们大约需要 5-10 分钟才能完成。我不希望他们在每次开发人员从 VS 运行测试时运行,因为这需要很长时间。它们纯粹是临时测试

有没有办法将测试标记为已忽略,但如果开发人员明确选择并运行测试而不每次都删除忽略标记,仍允许开发人员在本地运行它?我还希望这些测试通过 TFS 和 MS 测试运行器在通宵构建期间运行

【问题讨论】:

  • 您使用的是什么版本的 TFS?您使用的是新的构建系统还是旧的 XAML 构建系统?
  • 我正在使用 tfs 2015

标签: c# .net visual-studio tfs mstest


【解决方案1】:

建议您考虑使用Test Categories

通过单独对长时间运行的测试进行分类,您可以选择要在测试运行中包含的内容,例如

[TestMethod]
[TestCategory("Integration")]  
public void MyLongRunningTest()  
{  
    // Test Code
}  

然后运行:

mstest /testcontainer:TestProject.dll /category:"Integration"

【讨论】:

  • 如果我在 vs 上运行所有解决方案测试,这个测试还会运行吗?
  • 是的,或者您可以按 TestCategoryAttribute 对测试进行分组,然后选择只运行您想要的测试组。见:msdn.microsoft.com/en-us/library/hh270865.aspx
  • 我不想运行这些测试,除非开发人员明确想要运行它。希望有意义
  • 然后让开发人员养成运行已设置的测试组的习惯,该测试组排除集成测试而不是“全部运行”。全部运行意味着全部运行!
  • 被忽略或禁用的除外
猜你喜欢
  • 2015-01-15
  • 1970-01-01
  • 1970-01-01
  • 2012-11-14
  • 2011-09-08
  • 2014-03-08
  • 1970-01-01
  • 1970-01-01
  • 2016-09-14
相关资源
最近更新 更多