【Katalon学习五十九】测试监听器Test Listeners

Katalon Studio从5.2版本起引入了测试监听器功能,允许用户根据自定义标准创建测试步骤,可在测试用例或测试套件的前后执行。本文详细介绍了测试监听器的创建、管理和使用方式,以及它们如何帮助扩展测试流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

测试监听器Test Listeners 是Katalon Studio从5.2版本引入的一个新特性。这是一种帮助您扩展当前测试流的伟大而灵活的方法。简单地说,测试侦听器是根据您自己的标准创建的测试步骤,当条件匹配时将执行这些步骤。下面的指南包含了所有有用的信息,可以帮助您开始使用测试侦听器。

管理测试监听器

测试侦听器可以像其他测试工件一样处理,这意味着您可以执行所有基本操作,如创建、复制/剪切、重命名或删除。除了创建一个操作之外,我们不会过多地讨论这些操作。测试监听器位于Test Explorer窗格中。要创建新的测试监听器:

在“测试资源管理器”中右键单击“测试侦听器”。选择新的>新测试监听器。

 在创建一个新的测试监听器时,您可以看到在new test listener对话框中有4个选项:

 

Generate sample Before Test Case method在每个测试用例开始之前,将生成一个示例侦听器。
Generate sample After Test Case method在每个测试用例结束之后,将生成一个示例侦听器。
Generate sample Before Test Suite method在每个测试套件开始之前,将生成一个示例侦听器。
Generate sample After Test Suite method在每个测试套件结束后,将生成一个示例listenere。

 您可以选择一个或多个选项。一旦完成,Katalon Studio将相应地生成一个示例模板:

class NewTestListener {
	/**
	 * Executes before every test case starts.
	 * @param testCaseContext related information of the executed test case.
	 */
	@BeforeTestCase
	def sampleBeforeTestCase(TestCaseContext testCaseContext) {
		println testCaseContext.getTestCaseId()
		println testCaseContext.getTestCaseVariables()
	}

	/**
	 * Executes after every test case ends.
	 * @param testCaseContext related information of the executed test case.
	 */
	@AfterTestCase
	def sampleAfterTestCase(TestCaseContext testCaseContext) {
		println testCaseContext.getTestCaseId()
		println testCaseContext.getTestCaseStatus()
	}

	/**
	 * Executes before every test suite starts.
	 * @param testSuiteContext: related information of the executed test suite.
	 */
	@BeforeTestSuite
	def sampleBeforeTestSuite(TestSuiteContext testSuiteContext) {
		println testSuiteContext.getTestSuiteId()
	}
	/**
	 * Executes after every test suite ends.
	 * @param testSuiteContext: related information of the executed test suite.
	 */
	@AfterTestSuite
	def sampleAfterTestSuite(TestSuiteContext testSuiteContext) {
		println testSuiteContext.getTestSuiteId()
	}
}

 从上面的代码中可以看到,一个示例生成的模板已经添加了必要的注释、库和受支持的函数,以帮助您将当前的测试流扩展到更高的级别。

  • 测试侦听器没有限制。用户可以创建任意多的首选项。
  • 如果您有多个测试侦听器类,则类本身将在Katalon存储中按字母顺序实例化,只有这样,各个侦听器方法才会自上而下地执行。
  • 测试列表中任何步骤的执行状态都不会影响已执行测试用例的整体状态(e。g:如果您的任何一个测试监听器中有一个失败的输出,但是执行的测试用例的最终状态被传递,那么测试用例的状态将被传递)。

可视化工作流

为了不与setUp和tearDown混淆,下面的可视化工作流演示了Katalon Studio将如何在使用/不使用setUp和tearDown方法的情况下执行测试自动化项目。

 例如

使用测试监听器将多个环境定义为不同的全局变量。在测试用例执行之前,只需将环境变量更改为首选环境。

/**
 * Executes before every test case starts.
 * @param testCaseContext related information of the executed test case.
 */

@BeforeTestCase
def sampleBeforeTestCase(TestCaseContext testCaseContext) {
    if (GlobalVariable.gl_Environment == 'Local') {
        GlobalVariable.gl_Url = 'localhost'
    } else if (GlobalVariable.gl_Environment == 'Staging') {
        GlobalVariable.gl_Url = 'staging'
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值