Test compaction can be achieved by generating incompletely-specified tests (test cubes) and merging test cubes that are compatible. A test cube that is generated for one target fault specifies values that are needed for detecting only this fault. Compatible test cubes do not conflict in any of their specified values. When compatible test cubes ci0 and ci1 are merged, they yield a single test cube, ci0 +ci1 which detects all the faults that are detected by ci0 and ci1 individually. In addition, ci0 +ci1 may detect other faults. Thus, merging of test cubes yields test cubes that detect more faults, contributing to test compaction. After test cube merging, unnecessary test cubes may exist in the test set. Such test cubes can be identified by fault simulation followed by reverse order fault simulation.
展开▼