错误处理:净化从外部接口输入的参数,它是用来处理预期会发生的情况;
断言: 处理绝不应该发生的情况,用于子程序,系统内部的程序,用于调试开发中
如果在子程序接口入口处发生了断言,则说明:调用了该子程序的外部程序存在错误,而不是子程序本身有错误!
如果在程序内部执行中发生了断言,则说明:该程序在该断言之前的代码存在错误!
当然,这些说法的前提是:对断言中条件的使用是合乎程序功能设计的。
所以,在设计测试用例时,内部子程序的测试用例中不需要包含非法的输入参数,如NULL值的情况,只需要关心逻辑上的异常参数即可。
对于包含非法参数的测试用例,是用于对外接口函数的,以此来测试对外接口对外界输入的鲁棒性和健壮性。
对于何时使用异常处理,而何时使用断言,有这样一种判断准则:
1:如果使用了异常处理,那么如果异常发生,并且程序能够捕捉到这种异常情况,程序就能够很好的做出响应和反馈,就说明了程序设计良好,具有鲁棒性。
2:如果使用了断言,那么当断言触发时,它说明的是:程序的设计本身存在问题,需要修复,并重新编译和发布。
关于断言与错误处理,以及测试用例的设计
最新推荐文章于 2024-12-12 23:32:42 发布