code: public Date getDate(final Date baseDate, final int minDaysFromDate, final int maxDaysFromDate) {
      Calendar cal = Calendar.getInstance();
      cal.setTime(baseDate);
      int diff = minDaysFromDate + (random.nextInt(maxDaysFromDate - minDaysFromDate));
      cal.add(Calendar.DATE, diff);
      return cal.getTime();
    }
docs: Returns a random date which is in the range <code>baseData</code> + <code>minDaysFromData</code> to
  <code>baseData</code> + <code>maxDaysFromData</code>. This method does not alter the time component and the time is
  set to the time value of the base date.
  
  @param baseDate Date to start from
  @param minDaysFromDate minimum number of days from the baseDate the result can be
  @param maxDaysFromDate maximum number of days from the baseDate the result can be
  @return A random date