有些测试我只对LITTLE_ENDIAN机器有意义.
这可以做得更干净了
@Test
public void testSomething(){
if (ByteOrder.nativeOrder() == ByteOrder.LITTLE_ENDIAN) {
// do your thing
} else {
// skip
}
}
Run Code Online (Sandbox Code Playgroud)
如果可能的话,我想在每次测试中避免这种检查.
你应该做这个:
@Test
public void testSomething() {
org.junit.Assume.assumeTrue( ByteOrder.LITTLE_ENDIAN.equals( ByteOrder.nativeOrder() );
// more code
}
Run Code Online (Sandbox Code Playgroud)
JUnit的假设是:
一组方法,用于说明关于测试有意义的条件的假设.失败的假设并不意味着代码被破坏,而是测试没有提供有用的信息.
http://junit.sourceforge.net/javadoc/org/junit/Assume.html
您似乎要做的就是说明您的测试有意义的条件.