"本文主要探讨了QTP自动化测试中脚本回放时遇到错误的处理方式,以及QTP如何识别和操作对象的原理。"
在QTP自动化测试中,脚本回放时可能会遇到错误导致脚本中断。为了确保脚本能够继续执行,可以使用错误处理机制。例如,使用`On Error Resume Next`语句可以使脚本在遇到错误时跳过错误行,继续执行下一行代码,从而避免因单个错误导致整个脚本停止。而`On Error Goto 0`则用于恢复到默认的错误处理方式,即由QTP控制错误处理。
QTP中的对象分为两种:TestObject(TO)和RuntimeObject(RO)。TO是对象仓库中的模板,包含了被测试对象的特征属性。在运行时,QTP会根据脚本中的对象名称查找仓库中的TO,基于TO的特征属性去实际应用中匹配并找到相应的RO,然后对RO进行操作。TO在录制或编写脚本时创建,并可以在运行时动态调整以适应实际对象的变化。QTP提供了一系列函数来处理TO和RO的属性,如`GetTOProperty()`、`GetTOProperties()`、`SetTOProperty()`和`GetROProperty()`。
QTP提供了两种操作对象的接口:对象的封装接口和对象的自身接口。自身接口直接访问对象的内置属性和方法,而封装接口是QTP提供的额外一层接口,它通过调用自身接口实现。使用自身接口时,需要在对象名后添加`.object`,再跟属性或方法名;而封装接口则无需这一步。例如,获取对象的封装属性或调用封装方法时,对于实际对象,可以使用`对象.GetROProperty("封装属性")`或`对象.封装方法()`;对于仓库对象,则使用`对象.GetTOProperty("封装属性")`和`对象.SetTOProperty("封装属性","封装属性值")`。
在处理文本框的值时,QTP提供了两种方法。一是使用内置的`Out`值,例如`Window("WindowsInternetExplorer").WinObject("Internet Explorer").WebEdit("Name").Value = "新值"`,可以设置或获取文本框的值。二是直接通过`GetROProperty`或`SetROProperty`访问,如`对象.GetROProperty("Value")`获取值,`对象.SetROProperty("Value", "新值")`设置值。
理解和熟练运用这些QTP编程技术,对于编写健壮的自动化测试脚本至关重要。通过有效的错误处理和深入理解QTP的对象模型,测试人员可以更高效地进行自动化测试,提高测试覆盖率和稳定性。