I Assessment Assessment is a thorny issue. Probably what most of us think about here is online testing. The mechanism is that the student logs into some Web site and takes the required test. The issues are security, timing, and efficacy. Much research needs to be done here.
Online testing is increasingly important in the online course world.
You can use Java to create and grade tests. However, this requires some programming skills. Fortunately, most course management systems, such as WebCT and Blackboard allow for the possibility on creating, administering, and grading online tests. If you are interested just in self-tests, there are now JavaScript tools available for their creation. There are a number of services that will process grades from your tests.