最近因工作需要大概研究了一下QTP 8.2,对其使用的关键字驱动测试(Keywords Driver Test)很感兴趣,因此特地研究了一下。我查阅了QTP本身所带文档及其客户支持网站,也在网上找了些相关资料,并查阅了《软件测试自动化技术与实例详解》,对其原理的叙述都非常少,主要讲的是应用。本文主要谈谈我自己对其的理解和一些想法。
关键字驱动测试是一种自动化测试技术,国外对它的研究和应用早已有之,我估计在国内也是随着QTP对其的商业化应用才得以得到一些测试界同仁的关注吧。
oldsidney 在 何謂 Keyword-Driven Testing?对其进行了探讨,大家可以参考。
原理及特点
1. 关键字驱动测试是数据驱动测试的一种改进型
2. 用关键字的形式将测试逻辑封装在数据文件中,测试工具只要能够解释这些关键字即可对其应用自动化
3. 主要关键字包括三类:被操作对象(Item)、操作(Operation)和值(value),用面向对象形式可将其表现为 Item.Operation(Value)
4. 将测试逻辑按照这些关键字进行分解,形成数据文件
样例:
以下以一个样例来展示关键字驱动测试的特点。为了便于理解,我在样例中将操作对象拆分成对象名(Item Name)和对象类型(Item Type)。
样例是一个简单的转账例子:
1. 用户输入信息:转出账户的账号和密码、转入账号以及备注
2. 点击转账按钮进行转账
3. 检查提示信息是否正确
说明:
· 图中上方数据表格是根据关键字驱动编写的数据表格,下放是转换成标准语句后的测试步骤。
从样例中我们可以看出:
· 用关键字驱动设计的数据文件可以轻易的以标准化语句转换成测试步骤
· 不论在何种平台,只要测试工具能够正确解释这些数据文件中的关键字,即可以根据该数据文件中的逻辑进行回放和验证。