现在的审计方法是以风险导向的,因此所有的审计程序理论上均会与风险相关。与风险的相关就包含了风险的识别与风险的应对。在风险识别阶段,审计师是通过了解主体的业务来识别和评估重大错报风险的,那么如何来了解主体的业务呢?除了对主体本身的外部环境(包括市场、法律、监管等)进行评估外,更重要的是通过询问相关管理层来了解主体的业务,但审计师都清楚仅仅执行询问所取得的审计证据是非常不足够的,因此,穿行测试就出现了。穿行测试是在询问取得的管理层所描述的相关业务流程的基础上,进一步取得相关佐证,确定管理层所描述的流程是确实存在的。穿行测试的目的是了解内部控制和相关业务流程,进而辅助审计师进一步识别相关重大错报风险。穿行测试严格意义上来讲是“风险评估”阶段的工作。
在完成“风险评估”程序后,审计师需要做的另一件事就是设计审计程序来应对相关风险,这时候审计师手里就有两样法宝了,一个是控制测试,一个是实质性程序。