要害字驱动测试(Keyword-Driven Testing)方法,测试用例以要害字的形式表示,并且测试执行引擎根据这些要害字执行相应的操作。这种方法将测试步骤和测试数据从测试用例中分离出来,以提高测试的可维护性和重用性。要害字驱动测试通常用于支持测试自动化和测试自动化框架的开发。
原则上,要害字驱动测试能够应用于所有测试级别(例如组件测试、系统测试)和各种类型的测试(例如功能测试、可靠性测试)。
要害字驱动测试的要害思想是将测试逻辑与测试数据分离开来。测试逻辑由要害字表示,而测试数据存储在外部数据表或文件中。测试执行引擎读取测试用例中的要害字,并根据要害字从数据源中提取相应的测试数据,然后执行相应的操作。这种分离使得测试用例的编写更加简洁和可读,并且能够轻松地修改和扩展测试逻辑和测试数据,而无需修改测试用例本身。
要害字通常分为两个层次:
- 在较低的级别上,每个要害字都与一组详细的操作相关联,这些操作描述了要执行的确切步骤。
- 在高层次上,使用有意义的名称来标识要害字。此要害字可能需要一组输入参数,这些参数也属于结构中的此级别。要害字和参数一起构成了与测试用例相关的操作的高级描述。
模块化帮助推广了这种方法。如果需要测试自动化,那么能够创建一个框架,将手动创建的要害字测试用例解释为可执行的测试自动化脚本。这是通过为每个要害字实现测试自动化代码(例如要害字执行代码)来实现。

要害字驱动测试步骤
典型的要害字驱动测试(Keyword-Driven Testing)通常涉及以下几个要害步骤:
- 要害字定义:确定要使用的要害字,并为每个要害字定义其操作和功能。要害字能够是预定义的,也能够是根据测试需求自定义的。
- 测试数据准备:确定测试用例所需的测试数据,并将其存储在外部数据源中,如数据表或文件。测试数据能够包括输入值、预期结果、配置参数等。
- 编写测试用例:编写测试用例,以要害字的形式描述测试步骤和操作。测试用例将要害字和测试数据结合在一起,以指定要执行的操作和相关数据。
- 测试执行引擎:开发或选择合适要害字驱动测试的执行引擎或框架。测试执行引擎负责解析测试用例,根据要害字执行相应的操作,并从外部数据源中提取相应的测试数据。
- 执行测试用例:运行测试用例并观察测试执行过程。测试执行引擎将根据测试用例中的要害字执行相应的操作,使用提供的测试数据进行测试。
- 结果验证和报告生成:在执行过程中,对测试结果进行验证和比较,将实际结果与预期结果进行对比。生成测试报告,记录测试执行的结果、错误和问题等信息。
- 维护和扩展:根据需要对要害字和测试数据进行维护和扩展。当应用程序的功能或测试需求发生变化时,能够通过修改要害字和测试数据来调整测试逻辑,而无需修改测试用例本身。
.要害字驱动测试的层次
要害字能够表示不同抽象级别的操作。例如,一个要害字能够指一组非常复杂的活动,比如创建一个合约,其中包括很多步骤,而另一个要害字能够指一个非常简单的操作,比如按下图形用户界面上的一个按钮。第一个要害字接近业务和最终用户领域,而第二个要害字更接近测试接口。在相似的细节层次上编写的要害字,与涉众的视图有相似的关系,被认为属于相同的抽象层。

要害字驱动测试案例
我们能够斟酌一个简单的温度监测器的测试用例。
这个例子中的要害字驱动测试方法能够提高测试用例的可维护性和重用性。如果要测试其他类型的嵌入式设备,只需要修改启动设备和获取温度的要害字,并相应地调整验证步骤。其他操作和验证步骤能够保持不变。这样,我们能够通过修改要害字和数据来扩展和修改测试逻辑,而无需改变测试用例的结构。
|
要害字 |
参数 |
说明 |
|
启动设备 |
启动温度监测器设备 |
|
|
等待设备启动 |
超时时间 |
等待设备启动,并在指定的超时时间内完成启动 |
|
获取当前温度 |
从设备中获取当前的温度值 |
|
|
验证温度范围 |
最小值,最大值 |
验证当前温度是否在指定的范围内 |
|
关闭设备 |
关闭温度监测器设备 |