background image

  

2.1 利用 HTML DOM 编程接口实现 UI 自动化测试 

  

HTML DOM(HTML Document Object Model)文档对象模型定义了访问和处理 HTML

文档的标准方法。所有的

WEB 浏览器都内嵌了 DOM 解析技术,包括 IE 和 FireFox 等。要改

变页面的某个元素或节点,浏览器中的

JavaScript 就需要获得文档中所有元素进行访问来

获得每个对象的入口。这个入口,连同对

HTML 元素进行添加, 移动, 改变或移除的方法

和属性,都是通过文档对象模型来获得的(

DOM)。 

  我们来看下,如何用

HTML DOM 接口来实现在百度的首页(见下图)上完成自动搜

索。

 

  

“文本输入框”源码: 

  

“百度一下按钮”源码: 

  如果想通过

DOM 接口来完成自动搜索的过程,则 VBScript 代码如下。以下代码保存在

VBS 文件里, 双击运行。 
  

Set WshShell=WScript.CreateObject("WScript.Shell") 

  

Set ie=CreateObject("internetexplorer.application") 

  

ie.visible=1 

  

ie.navigate("http://www.baidu.com") 

  

Do while (ie.busy=True) 

  

wscript.sleep 1000 

  

Loop 

  

Set docRoot=ie.Document 

  

docRoot.getElementById("kw").value="163" 

  

docRoot.getElementById("su").click 

  

DOM 对象接口就是对 WEB UI 实施自动化测试的技术基础, 理论上,只要获得 DOM

的根节点,依次遍历,就可以对根下所有的对象进行操作了。但它的缺点是过于低层,需要
自动化测试开发人员对

DOM 非常的精通,而且要开发大量的遍历函数,才能完成一个基

本功能的操作。

 

  

2.2 QTP 测试工具 

  

QTP(Quick Test Professional)是 HP 公司提供的自动化测试工具,其脚本语言为

VBScript, 目前最新版本为 11。 主要为 GUI 自动化测试提供解决方案。 QTP 提供了 VB 
Object, Windows Object, Web Object 等对象接口, 生成的 VB Script 脚本好具有可读性好,
面向对象等优点。

 

  使用

QTP 录制百度搜索的操作, 生成的脚本如下: 

  

QTP 在录制的过程中, 捕捉页面上的元素,录制生成了 4 个 QTP 对象(如下图)。这

些对象以树状的组织形式存储在

QTP 的对象库里。每个对象的属性存储了此对象的相关信

息,对象的层次关系代表对象在界面上的隶属关系,即

DOM 的层次关系。   当脚本回放

时,

 QTP 会从对象库中读出对象的属性, 按对象层次结构, 依次与页面上的各个元素进

行比较。如果匹配成功则执行

QTP 脚本里的动作, 完成回放, 否则,脚本将会报错, 停止

运行。

 

  因此,可以看出

QTP 是在 HTML DOM 的基础上封闭了一套强大的 QTP 对象, 使得

用户对

DOM 的操作更加直观和方便。 

  

2.3 QC 简介 

  

QC(Quality Center)是 HP 公司的一个基于 Web 且支持测试管理的所有必要方面的应

用程序。

QC 测试流程包括四个阶段(指定需求,计划测试,运行测试,跟踪缺陷)。 

  指定需求阶段,

 您可以创建一个“需求树”,用于定义您的总体测试需求, 针对需求树