如何在每个特定场景后执行相同的几行代码? 例如,我们在功能文件的顶部定义了“背景”。有“页脚”或类似的东西吗? 由于我只想在特定功能上执行此代码,而不是在整个存储库上执行此代码,因此我需要将其添加到特定功能文件中,但我不想将其添加到功能文件中的每个场景中,我只想添加一次。
我们有背景,它在每个场景开始时执行:
背景:
*开始执行此操作
也开始这样做*
我想要这样的东西,在每个场景结束时执行:
页脚:
*完成此操作
为了完成也这样做*
是的,有一个
afterScenario
钩子:https://github.com/intuit/karate#hooks
Background:
* configure afterScenario = function(){ karate.log('hello') }
这也适用于在单独的功能文件中调用场景,即使放置在不同的文件夹中也是如此:
* configure afterFeature = function(){ karate.call(utilPath + "/helperFile.feature@helperTest"); }
这是假设您已在
karate-config.js
文件或后台定义了“utilPath”。