0

你能帮我解决以下情况吗?

我正在按协议做 poc,需要帮助来理解这个概念。我们是否需要调用真正的 Web 服务调用代码才能创建契约文件?如果是,如何为现有 API 代码创建协议文件

def test_HappyPath (self):
           mockurl = 'http://localhost:1234'
           expected =  {body:true}
           pact.given (
               'Given there is a valid  form'
           ).upon_receiving (
               'fetch all the info '
           ).with_request (
                'get',
               '/',headers={Authorization:'Bearer 58771381-333e-334f-9604-784'}
           ).will_respond_with(200, body=expected)
 with pact:
               result = callAPI ( mockurl )
           self.assertEqual(result, expected )

def callAPI (url):
    return requests.get ( url ).json()

我的理解是callAPI是真正的生产网络服务调用?我对么 ?如果是,您是否有任何示例代码可以从真实服务返回请求的响应。我有点卡在这个特定的部分来完成我的 POC 协议

先感谢您

4

1 回答 1

0

callAPI应该是您的消费者中通常负责调用远程 API(提供者)的代码。作为测试设置的一部分,您应该将系统配置为指向 Pact 启动的本地模拟服务器,而不是真实服务器。

callAPI被执行时,它会带回200你的expected身体。callAPI然后,您应该执行一些按预期工作的检查。

于 2018-09-15T01:20:10.000 回答