Я могу легко получить информацию об операционной системе хоста, используя System.getProperty("os.name")
Я могу писать защитные блоки в своих тестах:
Код: Выделить всё
@Test public void testSomeWindowsAPICall() throws Exception {
if (isWindows()) {
// do tests...
}
}
В качестве альтернативы я создал правило JUnit, которое запускает метод тестирования только в Windows:
Код: Выделить всё
public class WindowsOnlyRule implements TestRule {
@Override
public Statement apply(final Statement base, final Description description) {
return new Statement() {
@Override
public void evaluate() throws Throwable {
if (isWindows()) {
base.evaluate();
}
}
};
}
private boolean isWindows() {
return System.getProperty("os.name").startsWith("Windows");
}
}
Код: Выделить всё
@Rule public WindowsOnlyRule runTestOnlyOnWindows = new WindowsOnlyRule();
Есть ли у кого-нибудь альтернативное предложение?
Подробнее здесь: https://stackoverflow.com/questions/234 ... on-windows
Мобильная версия