1. QTP三种错误处理机制
l 全局错误响应: Test Setting中Run设置
l VBScript On Error错误处理: On Error Resume Next
l 错误恢复场景: Recovery Scenarios
2. VBScript错误处理机制
由于QTP使用了VBScript作为脚本语言,自然地,VBScrip的错误处理方式在QTP中都适用。在VBScript中,与错误处理相关的三者为:On Error Resume Next语句, On Error GoTo 0语句,以及Err对象。
l On Error Resume Next:一旦这个语句已被处理,脚本引擎将继续运行后面的程序,而不理会已经发现的任何错误。
l On Error GoTo 0:使用On Error Goto 0语句恢复缺省的错误处理行为。在运行这个语句后,发生的运行期错误将导致缺省错误处理。在QTP中,缺省错误处理就是全局错误响应。
l Err对象:Err对象重要的属性有三个:Number, Source, Description。分别是错误号,错误来源,错误描述;Err对象会在运行时错误发生的时候赋予新的值,旧的值会被舍弃。 Err对象不会受到函数调用的影响,它完全是全局的。 Err对象可以用Clear方法清空 任何时候调用On Error Resume Next或者On Error GoTo 0的时候,都会清空Err对象
3. Err对象有效范围
l Action中和Function Library(函数库)中的Err对象不是同一个错误对象。
l 被调用Action中产生的错误码不能传递到调用Action中去。
l ExecuteFile引入的函数与对Action中直接定义的函数的处理完全一致,Err对象也是同一个。