QTP描述性编程介绍

转载 2016年08月29日 17:28:31

引言:

  • QTP的描述性编程能够摆脱测试对象库德限制,编制出更为复杂、适应力更强的测试脚本。
  • 录制方式的测试脚本创建是最简单和快捷的测试脚本开发方式,但是,它带来的问题也是明显的,就是依赖测试对象库,测试脚本中使用的对象都必须是测试对象库中的对象。

什么时候使用描述性编程

  • 在测试过程中,有些界面元素是动态出现或动态变化的,在录制的时候并没有添加到对象库。

 

描述性编程的运行原理

  • 用描述性编程编写的测试脚本在运行时,QTP会使用测试脚本中给出的对象描述来查找对象,查找的位置不是对象库,而是与测试程序运行的QTP为其创建的临时对象版本进行匹配。

 

描述性编程的使用方法

  • 一种是直接描述的方法

    TestObject("PropertyName1:=PropertyValue1","...")

  • 另一种是使用Description对象的方法

源码:

Browser("百度一下,你就知道").Page("百度一下,你就知道").Link("新 闻").Click
If Browser("百度一下,你就知道").Page("百度新闻搜索——全球最大的中文新闻平台").Exist Then
 reporter.ReportEvent micPass,"新闻链接有效性测试","新闻链接有效"
 else
 reporter.ReportEvent micFail,"新闻链接有效性测试","新闻链接无效"
End If
Browser("百度一下,你就知道").Page("百度新闻搜索——全球最大的中文新闻平台").Sync
Browser("百度一下,你就知道").CloseAllTabs

用描述性编程方法1编写如下:

Browser("百度一下,你就知道").Page("百度一下,你就知道").Link("text:=新 闻").Click
If Browser("百度一下,你就知道").Page("百度新闻搜索——全球最大的中文新闻平台").Exist Then
 reporter.ReportEvent micPass,"新闻链接有效性测试","新闻链接有效"
 else
 reporter.ReportEvent micFail,"新闻链接有效性测试","新闻链接无效"
End If
Browser("百度一下,你就知道").Page("百度新闻搜索——全球最大的中文新闻平台").Sync
Browser("百度一下,你就知道").CloseAllTabs

注意:此时对象库中的“新闻”对象已删除。

用描述性编程方法2编写如下:

Set news=Description.Create
news("text").value="新 闻"
news("html tag").value="A"
Browser("百度一下,你就知道").Page("百度一下,你就知道").Link(news).Click
If Browser("百度一下,你就知道").Page("百度新闻搜索——全球最大的中文新闻平台").Exist Then
 reporter.ReportEvent micPass,"新闻链接有效性测试","新闻链接有效"
 else
 reporter.ReportEvent micFail,"新闻链接有效性测试","新闻链接无效"
End If
Browser("百度一下,你就知道").Page("百度新闻搜索——全球最大的中文新闻平台").Sync
Browser("百度一下,你就知道").CloseAllTabs

 

描述性编程的特点

  • 如果在测试对象层次结构的某一点开始使用了描述性编程,则该测试对象层次结构下的后续测试对象都要使用描述性编程的方式来描述对象。(一般称为“后续强迫性”)

相关文章推荐

QTP描述性编程原理介绍

QTP描述性编程原理介绍       QTP的工作原理有点类似人类社会的某些场景.比如一个朋友委托你带东西给A,如果你认识A,这表明A的容貌特征以及一些联系已经在你脑海有了印象,那么你只要找到了A的...

QTP描述性编程介绍

  • 2009-02-05 10:49
  • 1.09MB
  • 下载

QTP描述性编程介绍.pdf

  • 2009-07-20 11:08
  • 1.09MB
  • 下载

【软件测试自动化-QTP系列讲座 22】 == 描述性编程 ==

这一章的内容较为简单,对描述性编程熟悉的朋友可以直接略过,为了教程的完整性还是把这章的内容补上去,在学习本章之前,请先务必完成以下讲座的学习: 【软件测试自动化-QTP系列讲座 2】 == 对象...

QTP - 10. DP (Descriptive Programming) 描述性编程.

QTP - 10. DP (Descriptive Programming) 描述性编程 Writer : Tarun Lalwani 对象识别原理:Interaction with runtim...

QTP描述性编程几个示例

QTP描述编程几个用法示例

QTP---描述性编程

如果对象没有添加到对象库,QTP怎么工作呢?可以利用描述性编程解决这个问题。 最简单的说,DP就是在描述每个对象的属性和属性值。通过这个原理来虚拟成对象库中的对象。 描述性编程的第一种方式: 编...

QTP-描述性编程

不把对象存储到对象库中,而是在测试脚本中告诉QTP要操作对象的属性,然后QTP根据这些信息到真实的系统中去寻找对象,然后把操作施加在该对象上。 描述性编程和传统QTP脚本的区别:描述性编程把需要识别...

QTP描述性编程简介与Java CS程序实例

QTP描述性编程简介与Java CS程序实例
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)