首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pact验证:失败/错误:期望(Header_value).to match_header(name,expected_header_value)

Pact验证:失败/错误:期望(Header_value).to match_header(name,expected_header_value)
EN

Stack Overflow用户
提问于 2017-11-08 00:14:06
回答 1查看 219关注 0票数 0

使用pact验证响应标头是否与使用者和提供者匹配。在提供者端运行pact验证时会出现以下错误:

代码语言:javascript
复制
Failure/Error: expect(header_value).to match_header(name, expected_header_value)
Expected header "abc" to equal "xyz", but was nil

然而,当我检查我的响应头时,它给出了期望值("xyz")。

下面是我正在尝试验证的示例pact文件:

代码语言:javascript
复制
"interactions": [
{
  "description": "a request to do something",
  "request": {
    "method": "get",
    "path": "/example"
  },
  "response": {
    "status": 200,
    "headers": {
      "abc": "xyz"
    }
  }
}]

我是pact新手。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2021-02-05 04:33:33

虽然这是一个古老的帖子,但我希望这会对任何人有帮助。我不熟悉ruby,但是如果你使用一个基本的HTTP Rest请求,你需要在'withRequest‘上添加accept头,以及在'withRespondWith’上添加预期的头。您可以使用Postman查看请求和响应头;JavaScript示例:

代码语言:javascript
复制
describe('When a request is made to get all <resources>', () => {
    beforeAll(() =>
      provider.setup().then(() => {
        provider.addInteraction({
          uponReceiving: 'a request to receive to receive all...',
          withRequest: {
            method: 'GET',
            path: '/<resource>',
            // Default headers from Axios documentation
            headers: { Accept: "application/json, text/plain, */*" }
          },
...

willRespondWith: {
            // expected headers
            headers: { "Content-Type": "application/json; charset=utf-8" },
...
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47162569

复制
相关文章

相似问题

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