TFS 构建服务器和关键单元测试
TFS Build servers and critical Unit Tests
当您在 TFS 构建服务器上构建时,失败的单元测试会导致构建显示橙色警报状态,但它们仍然 "succeed"。有没有什么方法可以将单元测试标记为关键,这样如果它失败,整个构建就会失败?
我用 Google 搜索了它但没有找到任何东西,而且我在框架中没有看到任何属性,所以我猜答案是否定的。但也许我只是找错了地方。
是的。
使用 TFS2013 默认模板:
在 "Process" 选项卡下,转到第 2 部分,"Basic"。
展开自动化测试部分。
对于 "Test Source",单击省略号(“...”)。
这将打开一个新的 window,其中有一个 "Fail build when tests fail" 复选框。
有一种方法可以做到这一点,但您需要创建多个测试 运行,然后过滤您的测试。在您的测试中,设置一个 TestCategory 属性:
[TestCategory("Critical")]
[TestMethod]
public void MyCriticalTest {}
对于 NUnit,您应该可以使用 [Category("Critical")]
。一个test you can filter on, including the name.
有多个属性
- 姓名=
TestMethodDisplayNameName
- FullyQualifiedName =
FullyQualifiedTestMethodName
- 优先级 =
PriorityAttributeValue
- 测试类别 =
TestCategoryAttributeValue
- 类名 =
ClassName
还有这些运算符:
- =(等于)
- !=(不等于)
- ~(仅包含字符串值或子字符串)
- &(和)
- | (或)
- ( )(分组括号)
XUnit.NET currently does not support TestCaseFilters.
然后在您的构建定义中,您可以创建两个测试 运行,一个 运行 关键测试,一个 运行 其他所有测试。您可以使用测试 运行.
的 Filter option
使用这个很难找到的按钮打开测试 运行s window:
创建 2 个测试 运行:
在您的第一个 运行 中设置选项如下:
在你的第二个 运行 上设置选项如下:
这样,Team Build 将 运行 任何在第一个 运行 中具有“Ciritical”类别的测试,并且会失败。如果第一个 运行 成功,它将启动 non-critical 测试并部分成功,即使测试失败。
更新
当您在 TFS 构建服务器上构建时,失败的单元测试会导致构建显示橙色警报状态,但它们仍然 "succeed"。有没有什么方法可以将单元测试标记为关键,这样如果它失败,整个构建就会失败?
我用 Google 搜索了它但没有找到任何东西,而且我在框架中没有看到任何属性,所以我猜答案是否定的。但也许我只是找错了地方。
是的。
使用 TFS2013 默认模板:
在 "Process" 选项卡下,转到第 2 部分,"Basic"。
展开自动化测试部分。
对于 "Test Source",单击省略号(“...”)。
这将打开一个新的 window,其中有一个 "Fail build when tests fail" 复选框。
有一种方法可以做到这一点,但您需要创建多个测试 运行,然后过滤您的测试。在您的测试中,设置一个 TestCategory 属性:
[TestCategory("Critical")]
[TestMethod]
public void MyCriticalTest {}
对于 NUnit,您应该可以使用 [Category("Critical")]
。一个test you can filter on, including the name.
- 姓名=
TestMethodDisplayNameName
- FullyQualifiedName =
FullyQualifiedTestMethodName
- 优先级 =
PriorityAttributeValue
- 测试类别 =
TestCategoryAttributeValue
- 类名 =
ClassName
还有这些运算符:
- =(等于)
- !=(不等于)
- ~(仅包含字符串值或子字符串)
- &(和)
- | (或)
- ( )(分组括号)
XUnit.NET currently does not support TestCaseFilters.
然后在您的构建定义中,您可以创建两个测试 运行,一个 运行 关键测试,一个 运行 其他所有测试。您可以使用测试 运行.
的 Filter option使用这个很难找到的按钮打开测试 运行s window:
创建 2 个测试 运行:
在您的第一个 运行 中设置选项如下:
在你的第二个 运行 上设置选项如下:
这样,Team Build 将 运行 任何在第一个 运行 中具有“Ciritical”类别的测试,并且会失败。如果第一个 运行 成功,它将启动 non-critical 测试并部分成功,即使测试失败。