Abstract
A state is statistically considered to be more suspicious if it appears more in failed cases and less in passed cases. We implemented both code coverage and stage coverage in a debugging tool and used a commonly-used benchmark consisting of 58 faulty programs to evaluate their performance. For 22% of these programs, their faults are within 10 statement steps of the most suspicious statement identified by code coverage. By adding state coverage and breaking at the most suspicious state of this most suspicious statement, we increase this ratio to 41%, an 86% performance improvement. Finally, we also explain a few cases in which both state coverage and code coverage cannot perform well.