У нас есть проект Java с соответствующим набором тестов JUnit, который мы намерены запускать на платформе Linux. Он был разработан с использованием Windows без проблем.Различия между IntelliJ JUnit test runner и Gradle JUnit test runner от Linux
При запуске нашего тестового пакета с использованием gradle test
в Linux начинают появляться различия с плавающей запятой. Также существует разница между тестировщиком IntelliJ и встроенным Gradle.
JDK используется: Sun JDK 1.8u91 x64
Running tests using 'gradle test' on Linux: ERRORS (see below)
Running tests using IntelliJ test runner on Linux: OK
Running tests using 'gradle test' on Windows: OK
Running tests using IntelliJ test runner on Windows: OK
junit.framework.AssertionFailedError: expected:<-2.18> but was:<-2.1652631074322057>
junit.framework.AssertionFailedError: expected:<1.11> but was:<1.1376954128942385>
junit.framework.AssertionFailedError: expected:<373.32> but was:<375.4870142751794>
Можете ли вы привести примерный фрагмент кода тестируемого кода? Я предлагаю вам использовать 'java.math.BigDecimal', если вы хотите избежать проблем с плавающей точкой –