NAME TestMgr AUTHOR gordondavi@aol.com (Gordon Davis) FUNCTION A testing system for Smalltalk-80 ST-VERSIONS R4.1 PREREQUISITES st80_r41/hotdraw41/HotDraw-source THEN FILE IN testing.st, coverage.st CONFLICTS WITH DISTRIBUTION world VERSION ID 2.0 VERSION DATE 26 Nov 94 SUMMARY TestMgr This directory contains: 1) testing.st (Most of the testing system) 2) coverage.st (Additions/changes to ByteCodeStream, ClassDescription, Context, SmalltalkCompiler, and several classes in category System-Compiler-Program Objects) TestManager is a system for managing test cases for Smalltalk-80 code. It also measures execution time and produces an execution profile and coverage metrics. Test pass verification is done by evaluating a series of Smalltalk expressions (a doIt) and then comparing the printString of the value of the last expression with an expected (textual) result. The reason that the file-in is divided into two, is that coverage.st contains changes to some of the system classes. Actually, testing.st also changes system classes but it only adds methods, it doesn't change any of the ParcPlace methods. If you don't file-in coverage.st, you can still use every feature except for the coverage features (the Instrumentation Tool will still allow you to specify coverage instrumentation for a TestSuite but when you execute the TestSuite it will bomb). A usage guide is included in the author's Master's thesis. The thesis has not yet been completed but the first four chapters, which include the user's guide for TestManager are available on this server under /pub/papers/gdavis. These chapters are in Microsoft Word For Windows 6.0 format. If anyone can convert them to postscript I would be very grateful. The previous (and first) version was 0.9. Changes for version 2.0: Major: Much, much faster coverage instrumentation specification tool. Old test databases will no longer work. You will have to hack around in BOSS or wait until I can fix it. If you have a large test database in the old version, let me know and I will see if I can come up with a fix. Medium: Class name changes including the class used to launch TestManager. Now you use "TestNavigator open" or "TestNavigator openFromBinary". Minor: Maintenance, re-write of topological sort All comments are eagerly and gratefully accepted. Gordon Davis - 26 November 1994