code: private void recordStep(String action, String expectedResult, String actualResult, Boolean screenshot, Success success) {
          stepNum++;
          String imageLink = "";
          if (screenshot && isRealBrowser()) {
              // get a screen shot of the action
              imageLink = captureEntirePageScreenshot();
          }
          // determine time differences
          Date currentTime = new Date();
          long dTime = currentTime.getTime() - lastTime;
          long tTime = currentTime.getTime() - startTime;
          lastTime = currentTime.getTime();
          try (
                  // Reopen file
                  FileWriter fw = new FileWriter(file, true); BufferedWriter out = new BufferedWriter(fw)) {
              // record the action
              out.write(START_ROW);
              out.write("    <td align='center'>" + stepNum + ".</td>\n");
              out.write(START_CELL + action + END_CELL);
              out.write(START_CELL + expectedResult + END_CELL);
              out.write(START_CELL + actualResult + imageLink + END_CELL);
              out.write(START_CELL + dTime + "ms / " + tTime + "ms</td>\n");
              out.write("    <td class='" + success.toString().toLowerCase() + "'>" + success + END_CELL);
              out.write(END_ROW);
          } catch (IOException e) {
              log.error(e);
          }
      }
docs: Records the performed step to the output file. This includes the action taken if any, the
  expected result, and the actual result. If a screenshot is desired, indicate as such. If
  a 'real' browser is not being used (not NONE or HTMLUNIT), then no screenshot will be taken
  
  @param action         - the step that was performed
  @param expectedResult - the result that was expected to occur
  @param actualResult   - the result that actually occurred
  @param screenshot     - should a screenshot be taken
  @param success        - the result of the action