动态注入是在被测系统正常运行过程中,在特定的状态或条件下,通过一定的机制修改被测系统的二进制映像,从而实现故障注入。由于注入故障前被测系统的二进制映像不被改变,因此它能逼真地模拟被测系统的运行。另外,由于该种方式是根据被测系统的运行状态或条件注入故障的,所以它具有灵活性。
静态故障注入主要通过程序变异的方法,通过改变原程序,使被测系统文件静态的存在错误,从而使其运行时出现故障。由于静态注入占用很少的系统资源,能够较好的保持系统原来的时序,因此这种注入法有很好的优化性。
因此,设计故障注入系统时,要把动态注入的逼真性、灵活性的特点和静态注入优化性的特点结合起来,并尽可能的实现系统的可重用性。