Java 禁用基于文件分隔符的Junit5测试
我希望能够基于Java 禁用基于文件分隔符的Junit5测试,java,annotations,junit5,Java,Annotations,Junit5,我希望能够基于OS使用的文件分隔符禁用JUnit5测试 例如,windows文件分隔符是\,示例路径是src\resources\fou 在另一个OS上,文件分隔符可能是/(可能是MAC?)。 当文件分隔符为\时,我只希望我的测试运行 我找到了:@EnabledIfSystemProperty(name=“file.separator”,matches=“[/]” 因此,我将/更改为\,以匹配windows文件分隔符,但它不起作用,出现以下错误: 无法评估条件只有Windows使用\作为其文件分
OS
使用的文件分隔符禁用JUnit5测试
例如,windows文件分隔符是\
,示例路径是src\resources\fou
在另一个OS
上,文件分隔符可能是/
(可能是MAC?)。
当文件分隔符为\
时,我只希望我的测试运行
我找到了:@EnabledIfSystemProperty(name=“file.separator”,matches=“[/]”
因此,我将/
更改为\
,以匹配windows文件分隔符,但它不起作用,出现以下错误:
无法评估条件
只有Windows使用\
作为其文件分隔符
因此,以下情况应导致想要的行为
@测试
@使能操作系统(OS.WINDOWS)
仅在Windows()上无效{
// ...
}
抄袭自:
也就是说,在Java中,通过4(四)个反斜杠匹配一个反斜杠。这也应该起作用:
@EnabledIfSystemProperty(name=“file.separator”,matches=“\\\”)
愚蠢的错误我用了两个\\。应该去四个人。我想有人可能会更改文件分隔符(不知道是否可能),这就是我不想检查操作系统的原因。@EnabledIfSystemProperty(name=“file.separator”,matches=“\\\\”
工作正常。谢谢