Automated tests 空手道;一个场景中的多个URL

Automated tests 空手道;一个场景中的多个URL,automated-tests,karate,Automated Tests,Karate,这是我之前问的一个问题的后续 我希望从一个url中的响应中获取信息,然后在另一个url中使用它来进行另一个断言 大概是这样的: Scenario: Search for asset Given url "https://foo.bar.buzz" When method get Then status 200 * def responseItem = $.items[0].id // variable initialized from the response Given url "https:

这是我之前问的一个问题的后续

我希望从一个url中的响应中获取信息,然后在另一个url中使用它来进行另一个断言

大概是这样的:

Scenario: Search for asset
Given url "https://foo.bar.buzz"
When method get
Then status 200
* def responseItem = $.items[0].id // variable initialized from the response
Given url "https://foo.bar.buzz/" + responseItem + "/metadata"
// making request payload
When method put.....
现在当我运行这个时,它挂起在给定的第二个
语句上


关于如何解决这个问题有什么想法吗?

正如您可能发现的那样,“空手道HTML报告”将向您显示请求/响应和标题,只要您将调试日志级别放在log4j配置中,这将回答您的问题。

对问题的描述很糟糕。请再努力一点。如果
responseItem
是一个有效的字符串,它应该可以工作,我对请求方法进行了更改(现在是GET)。它没有完全停止,而是告诉我请求未经授权(改进)。但这很令人困惑,因为我在
背景中定义了标题数据,并且我处于相同的
场景中。我的第二个请求不应该使用相同的身份吗?完全取决于您在
后台所做的操作。希望其他人有耐心帮助你——这是我唯一剩下的建议:我知道我需要做什么;但这是出乎意料的。我有
*def headerData={Authorization:Bearer foo/token}
背景中。我必须在第二个
给定url
语句后添加
和headerData
,以使其正常工作。如果您阅读以下文档,这不会出乎意料: