Java 仅在Linux上运行JUnit测试
我有一个基本的JUnit测试,我只想在Linux上运行。如果我在Windows上构建代码,如何跳过测试Java 仅在Linux上运行JUnit测试,java,junit,Java,Junit,我有一个基本的JUnit测试,我只想在Linux上运行。如果我在Windows上构建代码,如何跳过测试 例如,我可以从Java获取操作系统平台吗?System.getProperty(“OS.name”)将为您提供操作系统的名称。如果操作系统是Windows,则可以使用该类跳过测试: @Test public void testSomething() { Assume.assumeFalse (System.getProperty("os.name").toLowerCa
例如,我可以从Java获取操作系统平台吗?System.getProperty(“OS.name”)将为您提供操作系统的名称。如果操作系统是Windows,则可以使用该类跳过测试:
@Test
public void testSomething() {
Assume.assumeFalse
(System.getProperty("os.name").toLowerCase().startsWith("win"));
// test logic
}
编辑:现代JUnit Jupiter为此提供了一个新的版本,带有
@EnableOnOs
和@DisableOnOs
注释:
@Test
@EnabledOnOs(LINUX)
public void testSomething() {
// test logic
}
您还可以使用
@Before
绕过类中包含的所有测试:
@Before
public void beforeMethod()
{
Assume.assumeFalse(System.getProperty("os.name").toLowerCase().startsWith("win"));
// rest of the setup
}
“我可以从Java获得操作系统平台吗?”在提问之前做一些研究怎么样?请参见“搜索、研究……并跟踪您发现的内容。即使你在网站的其他地方找不到有用的答案,包括没有帮助的相关问题的链接,也可以帮助其他人理解你的问题与其他问题的不同之处。“解释您是如何遇到您试图解决的问题的,以及阻止您自己解决问题的任何困难。”这不应标记为重复。它是询问如何确定操作系统平台跳过JUnit测试