1

是否有一种标准方法可以忽略仅针对一个平台或环境的测试?

我有一个跨平台构建,其中包含一些我只想在特定平台上忽略的 junit 测试。我想我可以通过几种不同的方式对测试进行条件化:

  • 使用类别禁用特定平台的测试(例如 NOT_SOLARIS)
  • 修改 Ignore annotation 和 TestMethod 以添加 Platform 选项忽略

    @Ignore("IssueTracker-ID", Ignore.PlatformSOLARIS)

如果我选择第二个选项,我将需要更改 junit 的本地分支(这不是问题,因为我已经在使用修改版本)。我可以更改 Ignore 注释以支持平台键,然后更改 TestMethod.isIgnored 以作用于该键。

有没有标准的 Junit 方法来处理这种情况?

谢谢

彼得

4

1 回答 1

0

您始终可以使用Assume。例如:

public void testWindows() {
  assumeTrue(platform != SOLARIS)
}
于 2013-05-24T19:59:02.433 回答