Your test is failing because you are expecting the FileNotFoundException, but it not actualy thrown from a method. Why? Because of try/catch wrapper, that swallows the exception, only printing the stack trace to the output.
Change the catch block to
catch (FileNotFoundException e) {
System.out.println("Error: Could not find database/storage.");
System.out.println(e.getMessage());
throw e;
}
and test will pass