首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取父调用方案的方案名称。

获取父调用方案的方案名称。
EN

Stack Overflow用户
提问于 2022-07-21 21:31:59
回答 1查看 57关注 0票数 1

我有一个特性文件,它有一个场景,用于为我们的api生成一个令牌。我们有能力传递一个声明,可以用来记录创建令牌的测试。如果不将名称传递给被调用的特性(并更新3000次测试),我们如何才能获得调用特性的名称,以便将其记录在令牌中?我们希望能够在令牌场景中进行更改,以集中更改。我可以通过karate.info.scenarioName获得场景名称,但这给出了被调用的场景名,而不是父调用场景。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-07-22 04:14:42

我认为最好的选择是在调用特性中定义一个额外的变量,如下所示:

代码语言:javascript
复制
* def caller = karate.feature.fileName

并利用变量总是在所谓的特性中“可见”的原则。如果您想要执行“安全”获取,请使用karate.get()

代码语言:javascript
复制
* def whoCalledMe = karate.get('caller')

您所要求的是可能的,但我不愿意分享这一点,因为这些都是不适合使用的内部API:

代码语言:javascript
复制
* def caller = karate.engine.runtime.caller.parentRuntime.scenario.feature

这将为您提供对空手道Java对象com.intuit.karate.core.Feature的引用。

karate.scenariokarate.feature API在1.0以后可用,不再推荐karate.info:https://github.com/karatelabs/karate/wiki/1.0-upgrade-guide#karateinfo-deprecated

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73072878

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档