首页 > 解决方案 > Pact 中的 ProviderStates

问题描述

据我所知,Pact 规范的第 3 版表示交互支持多个 providerState,并允许您定义参数。我在 pact-web 或 pact-js 存储库中不支持此功能。我正在使用 pact-web 并将其集成到现有的 Angular 项目中。我最终通过创建一个新的交互类来添加 providerStates,该类扩展了库中定义的类。通过应用程序进行调试,我看到它已序列化并发布到模拟服务。

但是,我没有看到 providerStates 属性保存到协议文件中。我只看到providerState。我正在尝试通过 pact-node 项目进行调试,但找不到文件实际写入磁盘的位置。有什么建议吗?

标签: pactpact-node

解决方案


当前稳定的 Pact JS 包不支持 V3,但有一个beta 包支持。

Pact Web 当前未包含在此版本中,其未来目前尚不确定。我的建议是使用 Node.js 框架(例如 Jest、Mocha 等)将协议测试与您的 Angular 测试套件(即不在 Karma 中)分开编写,或者坚持使用当前的 beta 包而不需要多个提供程序状态。


推荐阅读