Вы можете попытаться использовать рациональные значения вместо плавающей запятой. Последние часто уже неточны, поэтому на самом деле не идеально подходят для шага.
inline double snap(double original, int numerator, int denominator)
{
return round(original * denominator / numerator) * numerator / denominator;
}
Скажем, вы хотите шаги 0,4, затем используйте 2/5:
snap(1.7435, 2, 5) = round(4.35875) * 2 / 5 = 4 * 2 / 5 = 1.6 (or what comes closest to it)
Обычно Вы добавили бы профиль к своей конфигурации знатока, которая выполняет другой набор тестов:
выполните это с mvn-Pintegrationtest установка
<profile>
<id>integrationtest</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>-client -Xmx896m -XX:MaxPermSize=192m</argLine>
<forkMode>once</forkMode>
<includes>
<include>**/**/*Test.java</include>
<include>**/**/*IntTest.java</include>
</includes>
<excludes>
<exclude>**/**/*SeleniumTest.java</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
<activation>
<property>
<name>integrationtest</name>
</property>
</activation>
</profile>
Используйте плагин интеграционного теста, такой как Супер Полезная Штука Интеграционного теста для разделения Интеграционных тестов (длительный, системный) от Модульного теста (пуристы говорят 30 секунд макс., чтобы все истинные модульные тесты работали). Сделайте два пакета Java для своих модульных тестов по сравнению с интеграционными тестами.
Затем не связывайте этот плагин с фазой (нормальный жизненный цикл знатока) и только выполняйте его, когда это явно назовут как цель, как так: mvn shitty:clean shitty:install shitty:test
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>shitty-maven-plugin</artifactId>
</plugin>
</plugins>
Таким образом, на Ваших нормальных разработчиков не повлияют, и Вы сможете выполнить интеграционные тесты по требованию.
Другая опция состоит в том, чтобы иметь стресс-тест, обнаруживают его, работает в знатоке и выполненный только несколько раз. т.е. превратитесь в регулярное функциональное испытание. Таким образом, можно проверить, что код все еще хорош, но не выполняемый в течение долгого времени.