什么是关键字驱动测试(Keyword-Driven Testing)?
我们继续来深入探讨自动化测试的另一个高级方法论——关键字驱动测试。
如果说数据驱动测试是分离了“数据”与“脚本”,那么关键字驱动测试则更进一步,它分离了“做什么”、“怎么做”和“谁来做”,是面向非技术人员的自动化测试解决方案。
一、核心概念:什么是关键字驱动测试?
一句话概括:
关键字驱动测试是一种将测试逻辑封装成人类可读的“关键字”(Keyword),并通过这些关键字的组合来构建测试用例的框架。其核心在于将测试操作、测试数据和执行逻辑进行三层分离。
一个生动的比喻:
想象你在写一份“烹饪清单”来做一道菜(执行一个测试用例)。
-
非关键字驱动: 你像一个程序员一样对厨师下指令:“左手拿起锅,右手倒油10ml,打开燃气灶至中火...”(这是脚本)。
-
关键字驱动: 你写下的清单是:
[打开浏览器]->[输入文本, 搜索框, '软件测试']->[点击, 搜索按钮]->[验证标题, 包含, '软件测试']。-
这里的
打开浏览器、输入文本、点击、验证标题就是关键字。 -
厨师(测试引擎)知道每个关键字对应的具体动作(脚本)。你不需要关心“如何点击”,只需要告诉厨师“去点击”以及“点击什么”。
-
二、架构与核心组件:它是如何构建的?
一个成熟的关键字驱动框架通常包含以下四个核心层次:
-
测试数据表:
-
是什么: 通常是Excel、CSV等表格文件,用于存储每个测试步骤所需的具体参数。
-
示例: 在
[输入文本]这个关键字后面,需要指定定位器(如:id=username)和文本值(如:testuser)。
-
-
关键字库:
-
是什么: 这是框架的“心脏”,一个独立的函数库或类库。
-
