【问题标题】:Pact post deploy contract verificationPact 部署后合同验证
【发布时间】:2021-04-25 05:23:29
【问题描述】:

我正在使用 Pact JS 进行合同测试。我已经编写了提供者和消费者部分,并将它们上传到了协议代理。合同 URL 指向我的 QA 环境。我想创建一个每天运行的 Slack webhook 并验证合同是否仍然通过。 有没有办法让我在不上传新合同的情况下按需运行协议验证? 如果我只是想检查是否没有任何变化,我为什么需要更改我的合同? 这似乎是每个人都应该使用的基本功能,但为了我的爱,我无法在文档中找到它

【问题讨论】:

    标签: automated-tests pact contract


    【解决方案1】:

    我认为您误解了契约经纪人的工作方式。它不运行提供者测试 - 您的提供者的 CI 工作将运行该测试,并且在该阶段它将从代理中提取合同并针对您的提供者进行测试(通常在本地,但在您的情况下针对 QA 环境) .

    因此,在您的情况下,您要触发的是提供者 CI 构建,而不是协议代理。

    而且,如果没有任何改变(即消费者没有发布新合同,提供者也没有改变其实现),为什么还要运行构建?

    【讨论】:

    • 那么触发提供者 CI 构建是唯一的方法吗? 在部署之后是否有机会针对环境运行合同测试?我正在与多个不同的团队合作,事实证明很难说服他们修改他们的 CI 工作流程
    • 可能值得进入我们位于 slack.pact.io / pact-foundation.slack.com 的社区工作区并在那里讨论选项。简短的回答是 Pact Broker / Pactflow 不会运行您的实际测试,因此解决方案可能不在该过程之外。如果说服团队修改其 CI 流程以使用 Pact,您可能对 pactflow.io/blog/bi-directional-contracts 感兴趣
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-02-13
    • 1970-01-01
    • 2019-09-24
    • 1970-01-01
    • 1970-01-01
    • 2022-11-22
    • 1970-01-01
    相关资源
    最近更新 更多