For the case of the software we use today, the information outside the specification is increasing. For quality assurance purposes, it would be desirable to integrate the analysis of software and hardware components with testing. In this paper, we propose a fault-based approach for generating test cases, thus overcoming the limitations of specification-based approaches that derive from the intrinsic incompleteness of the specification, and from the focus of specifications on correct behaviors, rather than potential faults. We use Fault Tree Analysis to determine how certain undesirable states can occur in a system. The results of the analysis expressed in terms of Duration Calculus are integrated with statechart based specifications. As a result, we obtain a testing model that provides a representation of the way the system behavior can be compromised by failures or abnormal conditions or interactions.
In this way we can automatically derive fault-based test cases from this model.