jQuiz is a simple Java-based quiz engine that works from the command line. jQuiz looks for any .jq files in its directory and lists them for the user to select from. When the user selects the file, it is opened and jQuiz begins presenting questions selected at random from the file.
".jq" files are simply text files with questions in them that are in a specific format so that each of the components can be parsed by jQuiz. Thus anybody can easily add more questions, edit existing questions, or create entirely new .jq question sets. This format is unique among existing testing aids in that it allows you to modify the time for each question. This way you can give yourself significantly shorter time for the easier questions like "Enter the package containing the Console class" than the standard 3 minutes. This may be a good way to toughen you up for a real exam.
jQuiz.java questions.jq (<---put this in the same directory)
Writing your own questions is a good way to work through confusing concepts. But then, if multiple people wrote questions and posted .jq files, everyone else could benefit from them too. At any rate, questions.jq has 300 questions, which at 3 minutes per question on average, would take 5 hours to complete, so if you use it you might want to break it up into 5 separate .jq files.