当前位置: 首页 > 知识库问答 >
问题:

如何配置空手道后场景在karate-config.js文件

牧宁
2023-03-14

我在功能文件中使用空手道配置后场景=,并成功地获得结果,并且能够进行数据库调用。如何在Karate-config.js?

注意:我还有一个Java类调用。

任何像这样的实现?

在特征文件中使用的代码

Background:
* def inFluxDb = Java.type('aPITests.InfluxDBCall');
* def dbCDB = new inFluxDb();
* configure afterScenario = 
"""
function(){
  var info = karate.info; 
  karate.log('after', info.scenarioType + ':', info.scenarioName);
  karate.log('after', info.scenarioType + ':', info.errorMessage);
  karate.log('after', info.scenarioType + ':', info.featureDir);
  karate.log('after', info.scenarioType + ':', info.featureFileName);
  karate.log('after', info.scenarioType + ':', info.scenarioDescription);
  var featurenameupdate = info.featureFileName.substring(0, info.featureFileName.length-8);
  var status="Fail";
  if(!info.errorMessage){
  status="Pass";
  }
  dbCDB.DBConnection( "http://localhost:8086", "root", "root");
  dbCDB.DBwrite( featurenameupdate, info.scenarioName, info.errorMessage, status );
  dbCDB.connectionClose();
}
"""

更新:使用空手道后的担忧。配置

场景:我有两个功能文件

特性1:API)包含@smoke@测试标签

功能2: UI)包含@dropdown@Angular

My*def configure afterScenario在仅执行@smoke test、My空手道时被声明为Feature2文件。配置('afterScenario','UI.feature') 未加载。

这是预期的,还是我这边有什么需要更新的?


共有1个答案

赫连坚
2023-03-14

使用karate.configure()API将任何功能confiure步骤移动到JS配置中。

karate.configure('afterScenario', read('some.feature'));

我不建议“膨胀”你的空手道配置。js除非绝对必要,因为它是为每个场景示例行调用的。请考虑使用<代码> Exchange钩子。

 类似资料:
  • 我正在使用以下语句在karate-config.js中配置retry: 运行测试时,控制台中出现以下错误: [main]错误com.intuit.karate-javascript函数调用失败:意外的“configure”键:“retry”。 有人能提出解决这个问题的办法吗?

  • 我有一个带有函数auth()的basic-auth.js文件。 我想在karate-config.js内部使用该功能,哪种方式最好?是用karate.call? 谢谢!

  • 如何在空手道配置中设置值。功能中的js?我在我的一个功能中创建了一只猫,我想把这个id放到空手道配置中。名为catId的值中的js

  • 任何帮助都将不胜感激。谢谢!

  • 我只使用最新的独立空手道jar在配置了JRE的docker映像上测试我的API,我没有任何Java代码。 这是我目前使用的新版本: 09:30:37.333[主]信息网。凭直觉。空手道。内蒂。主要-空手道版本:0.9。09:30:37.489[主]信息网。凭直觉。空手道。跑步者-空手道版本:0.9。1 09:30:38.067[ForkJoinPool-1-worker-1]警告com。凭直觉。空

  • 问题内容: 我必须在6个以上的环境中运行相同的其余api脚本集。因此,我已将所有测试数据和端点/资源路径存储在json文件中。然后,我尝试将此json文件读入我的karate- config.js文件,这是因为我要获取与从命令行(karate.env)传递的环境相对应的数据,该环境正在读入我的空手道-config.js文件 以下是我的json文件示例 下面是我的karate-config.js文件