Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Karate 如何获得用于钩子的响应_Karate - Fatal编程技术网

Karate 如何获得用于钩子的响应

Karate 如何获得用于钩子的响应,karate,Karate,我试图制作一个简化版本的测试报告,其中生成一个HTML文件报告,其中只包含断言和错误响应消息(尝试不发布所有日志和步骤) 我知道我们空手道有钩子。但是,我在github中查找了空手道对象,但找不到任何可以从中提取响应的对象(将传递给名为on hook的js函数) 我现在正在做的是: 配置: //karate-config.js karate.configure('afterScenario', karate.call('classpath:hooks.js')); //hooks.js //L

我试图制作一个简化版本的测试报告,其中生成一个HTML文件报告,其中只包含断言和错误响应消息(尝试不发布所有日志和步骤)

我知道我们空手道有钩子。但是,我在github中查找了空手道对象,但找不到任何可以从中提取响应的对象(将传递给名为on hook的js函数)

我现在正在做的是:

配置

//karate-config.js
karate.configure('afterScenario', karate.call('classpath:hooks.js'));
//hooks.js
//Looking on how to extract the response and log it here
function(){
    var info = karate.tags; 
    karate.log('Tags', info);
  }
挂钩

//karate-config.js
karate.configure('afterScenario', karate.call('classpath:hooks.js'));
//hooks.js
//Looking on how to extract the response and log it here
function(){
    var info = karate.tags; 
    karate.log('Tags', info);
  }
空手道上的东西我遗漏了什么吗?或者这应该通过另一种方式实现

非常感谢

试试这个:

var response = karate.get('response');
编辑更好的示例:

Background:
* configure afterScenario = function(){ karate.log('***', karate.get("response.headers['X-Karate']")) }

Scenario:
Given url 'http://httpbin.org'
And path 'headers'
And header X-Karate = 'test'
When method get
# this will fail
Then status 400

我试过空手道。直接获得('response')和
response
,两者都有效。如果使用
karate.call()
响应作为参数传递。

Hi-Peter。它正在返回
null
value@Raymond请参阅我的编辑。如果您仍然有问题,请遵循以下过程:我发现了一个异常行为,尽管我已经将
hooks.js
文件作为
afterScenario
或甚至
afterFeature
放在
karate config.js
上,它在实际获得响应之前打印日志。@Raymond可能是个bug-因此请参阅^OMG my bad上面的链接。非常感谢,彼得!