A self adaptive online test generator that randomly picks questions from a database, based on difficulty level and topic. An adminstrative console provides the ability to load questions into the database in a WYSIWYG enviornment with an Ajax spellchecker