QTP之对测试用例的自动化过程的分解

第一部分:自动化一个测试用例

当你要开始自动化一个测试用例的时候,有一些重要的事情需要完成。当你完成所有这些事情的时候,测试脚本的自动化也随之完成。

在这里,我们将首先在大部分的自动化测试用例里找出所有通用的任务。

让我们用一个例子(GmailLogin)来理解前面所说的内容

为了自动化Gmail Login,你需要写一些代码来做以下的事情:

  • 打开Gmail Url
  • 输入正确的用户名和密码
  • 点击登录按钮

通过下面的图让我们更加详细的理解这一点:

任务1 - 识别对象

  • 在你对任何对象做操作之前,你需要唯一地识别这个对象。比如,在你输入Email之前,你应该知道在Gmail Login界面上的2个输入框那个是Email。一旦你正确的识别出email,你就可以在Email里输入正确的数据
  • 每个控件都有它自己的唯一属性集,用它们,在同一个页面你就可以与其它的控件做区分。例如,Gmail的的登录按钮包含了文本'Sign in',用这个文本就可以明显与其它的按钮做出区分

  • 因此,识别一个对象,你要找出这个对象的唯一识别属性

任务2 - 在对象上执行操作

 

  • 一旦你唯一的识别一个对象,那么下一步将是对这个对象的一些操作
  • 你所执行的操作依赖对象的类型,不同类型的对象包含不同的操作
  • 比如:对于按钮和链接,你可以做点击操作。对于一个输入框,你能执行Set或者Type操作。类似的,对于每个对象都有自己的操作集合

任务3 - 数据处理

  • 数据处理也是在对象上执行操作的一部分
  • 对于像输入框的控件,你需要执行输入一些数据的操作

任务4 - 合并所有单独的操作

  • 为了创建一个测试脚本,你需要合并单独的操作在一起,然后执行它们
  • 比如:Gmail的登录部分将有以下的操作
    • op1: 打开Gmail URL
    • op2: 输入用户名
    • op3: 输入密码
    • op4: 点击登录按钮
  • 您能以Action或者Function的形式合并所有单独的操作
  • 因此一个Action或者Function是一个操作集合,这些操作集合合并成一个业务逻辑流(比如Login, Logout, Search)

任务5 - 重用和不重用的函数

  • 在你的测试脚本里有一些函数,一些是只能用一次,而其他的函数可以用多次
  • 只能用一次的Actions是不可重用的Actions,可以用多次的Actions是可重用的Actions
  • 例子:考虑以下的3个测试用例

  •  上图,你注意到函数Gmail_Login和Gmail_Logout是被用了多次。因此,这些都是可重用的函数,其它都是非可重用的函数。

一个简单测试脚本的结构

 以上我们已经列出了你需要执行测试脚本的通用任务

  • 识别唯一的对象
  • 在对象上执行操作
  • 只要需要就要执行数据处理操作
  • 创建重用和非重用的的Action(Function)

第二部分:QTP怎样自动化测试用例

  • 在第一部分,你看到为了创建一个测试脚本你需要完成的通用任务
  • 在这个部分,你将看到QTP怎么样协助我们来完成这些任务
  • QTP有不同的功能和机制来帮助你完成这些任务
  • 让我们看下每个任务以及对应QTP的功能

识别和存储对象

QTP提供一个唯一的机制,使用它,你能找出对象的唯一识别属性。这个机制叫做Object Spy。QTP也提供一个叫做Object Repository的仓库,可以存储一些对象以及他们的属性

在对象上执行操作

QTP有一系列预定义函数库,他们包含了不同对象的相关所有的操作。当你写一个对象在你的脚本里,QTP也提供了智能提示,它可以自动展示与这个对象相关的所有函数和属性

执行数据处理操作

QTP有自己内建的机制,叫做DataTable, 你在这里保存测试数据,稍后在测试脚本里使用它。QTP提供它自己的集合函数,使用它们就可以从DataTable里解析数据

即使你的数据存储在外部文件里,比如Excel或者XML文件,QTP提供许多方法,使用它们你就可以从外部数据源里获取到数据

 

存储重用和不重用的代码

QTP也提供许多方法,你能用这些方法来存储重用和非重用的的代码。这些机制是:

  • Action:Action是你保存代码最通用的方法之一。你能保存重用和不重用的代码在Actions里
  • Function Library: 函数库是又一个很流行的方法,你几乎可以在所有的QTP项目里的使用它。函数库主要用来存储可重用的代码
  • Business/Scripted Components: 尽管很少用,这个也是你可以存储代码的地方

总结:

  • 为了写测试脚本,你需要知道你要做的一些通用任务是:
    • 识别和存储对象
    • 在对象上执行操作
    • 在脚本里处理测试数据
    • 合并所有的操作形成重用&非重用的动作
  • 你也知道QTP怎么用它的一系列功能来帮助你创建测试脚本:
    • Object Spy和对象库
    • 内建的函数库
    • DataTable和相关的方法
    • Actions,函数库和组件
原文地址:https://www.cnblogs.com/testermark/p/3542671.html