Одним из решений, которое не требует каких-либо инструментов, является простое внедрение зависимостей: ваш код зависит от того, что говорит ему текущее время, так почему бы не передать часы?
public class Clock {
public LocalDateTime now() {
return LocalDateTime.now();
}
}
В своих тестах вы можете смоделировать эти часы, чтобы вернуть все, что вы хотите.