深入解析QuickTest测试对象与工作原理

0 下载量 92 浏览量 更新于2024-07-15 收藏 1.18MB PDF 举报
"QucikTest测试对象的深入剖析" 在自动化测试领域,QuickTest Professional(QTP,现称UFT - Unified Functional Testing)是一款广泛使用的功能自动化测试工具。本篇文章将详细探讨QTP中的测试对象及其工作原理,帮助读者深化对QTP的理解。 1. QuickTest工作原理 QTP通过录制和回放技术来实现自动化测试。在录制过程中,它会识别并捕获应用程序中的各种元素,如窗口、按钮、文本框等,将其作为测试对象。这些对象按照类型进行分类,如Windows控件或Web组件。对象的相关属性,如位置、大小、文本等,会被保存在对象库中,形成一个对象的唯一标识。在回放时,QTP会基于对象库中的属性信息寻找与之匹配的运行时对象,执行预设的动作,如点击、输入等。 2. 测试对象与运行时对象 - **测试对象(IdentificationProperties)**:在录制阶段,QTP识别并记录的被测应用程序对象被称为测试对象。它包含了用于识别对象的一组属性和属性值,这些属性在回放时用来定位实际运行中的对象。测试对象是抽象的,存在于测试脚本中。 - **运行时对象(NativeProperties)**:在应用程序实际运行时,这些对象以它们的原生形式存在,即运行时对象。它们是实际被QTP操作的对象,具有与测试对象相同的属性,但存在于应用程序内存中。 3. 对象库(Repository) 对象库是QTP存储所有测试对象的地方。每个测试对象在库中都有对应的条目,包括其独特的属性集和关联的动作。QTP提供了多种方式来管理对象库,包括编辑属性、重命名、复制和组织对象,以提高测试脚本的可维护性和复用性。 4. 对象的识别与匹配 QTP使用“智能识别”技术,根据对象的多个属性来确保找到正确的对象。如果一个对象的某个属性发生改变,QTP可能会使用其他属性来确保仍然能正确识别该对象。此外,用户还可以自定义识别规则,添加或删除特定的属性,以适应不同的应用程序环境。 5. 动作与操作 每个测试对象都与一组预定义的动作相关联,如Click(点击)、Type(输入)、Set(设置值)等。在脚本中,这些动作与测试对象的属性结合,形成完整的测试步骤。用户也可以自定义动作,扩展QTP的功能。 6. 对象的增强与优化 为了提高测试的稳定性和可靠性,用户可以通过优化对象属性来应对应用程序的变化。比如,可以增加对象的描述性属性,使用相对定位而不是绝对坐标,或者使用“对象的相对部分”来识别复杂的控件。 7. 处理对象的动态性 在实际应用中,对象的属性可能会因为各种原因动态变化。QTP提供了一些策略,如“对象间关系”和“健壮性”设置,来处理这类情况,保证测试的鲁棒性。 总结,QTP的测试对象机制是其强大功能的基础,理解这一机制有助于编写更高效、可靠的自动化测试脚本。通过深入学习和实践,测试人员可以充分利用QTP的特性,提升测试效率,确保软件的质量。