This web site is the home of Web-CAT: the Web-based Center for Automated Testing. Web-CAT developers, administrators, or users can keep track of changes to this wiki using our Recent Changes RSS Feed [http://web-cat.cs.vt.edu/WCWiki/RecentChanges?action=rss_rc&ddiffs=1&unique=1 ].
[ Note: if you are an IE user with a Dell widescreen notebook or a Dell that shipped with a hi-res widescreen display, and the images/layout on this page look all funky and ugly, read this blog entry on how IE may be improperly auto-scaling your images. ]
Web-CAT is an advanced automated grading system that can grade students on how well they test their own code. It is highly customizable and extensible, and supports virtually any model of program grading, assessment, and feedback generation. Web-CAT is implemented a web application with a plug-in-style architecture so that it also can serve as a platform for providing additional student support services to help students learn programming or software testing.
You can find out more through the following pages:
WebCatCookbook: the community-maintained documentation for Web-CAT
GUI Testing for Swing and the JTF Library
To support testing of graphical programs, we provide a library with student-oriented testing features:
As part of this project, we have also developed a number of plug-ins and features for the Eclipse IDE. These plug-ins are included under the umbrella of our SourceForgeProject. You can find out more through the following pages:
EclipsePlugins: an overview page for our Eclipse work
ReflectionSupport is a high level abstaction for java reflection. It provides static helper methods for common tasks of reflection such as object creation, method invocation and field manipulation.
- No task sub-division
- No try-catch
- No type cast
- Diagnostic error report
- Exceptions thrown by underlying code are unwrapped and passed to user provided handlers
Source code can be downloaded from here.
Visual Studio Packages
As with our Eclipse plug-ins above, we now provide similar add-on packages for users of Visual Studio.NET 2005 and higher. These packages are included under the umbrella of our SourceForgeProject. You can find out more through the following pages:
VisualStudioPackages: an overview page for our Visual Studio work
Dereferee is a C++ template library intended for introductory C++ students learning about manual memory management and pointers. It provides a pointer template class that is instrumented to give highly detailed diagnostics about memory leaks, pointer-related errors that would normally cause a program crash, and other unwise behavior that may not cause an immediate failure but lead to one further down the line.
Our Eclipse update site allows you to install all of our Eclipse features with Eclipse's built-in update capabilities.
Independent Study/Undergrad Research Project Ideas
Are you a student interested in contributing to Web-CAT or one of our other ongoing CS education projects, for undergrad research, independent study, or just for fun? If so, check out the page on ResearchProjectIdeas.
This Site is a Wiki
A wiki (short for a WikiWikiWeb) is a collaborative web site where all users can edit existing pages or create new pages. While participation on this wiki requires self-registration, you can read all public pages without registering. To contribute to this site, read AboutThisWiki.
We gratefully acknowledge the support provided to this work by our sponsors. Web-CAT is supported in part by the National Science Foundation under Grant Nos. DUE-0633594, DUE-0618663 and DUE-0127225, as well as by Virginia Tech's Institute for Distance and Distributed Learning. Eclipse plug-in development is supported in part by an Eclipse Innovation Grant from IBM. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation, IDDL, or IBM.