我想开始使用 Pact 为我们的异步消息流架构启用消费者驱动的合同。在阅读了 pact-foundation 的大部分文档和入门指南后,我尝试按照https://github.com/pact-foundation/pact-js/tree/master/examples/messages中的示例进行操作。现在我只需要创建 Pact 的消费者端。
当我跑
npm i
npm run test:consumer
我在级别收到以下错误debug
:
[2020-04-02T09:30:19.822Z] INFO: pact@9.2.2/15568 on MYPC: Verifying message
[2020-04-02T09:30:19.829Z] INFO: pact-node@10.8.0/15568 on MYPC: Creating Message
[2020-04-02T09:30:19.839Z] INFO: pact-node@10.8.0/15568 on MYPC: Creating message pact
[2020-04-02T09:30:19.849Z] DEBUG: pact-node@10.8.0/15568 on MYPC: Starting pact binary 'standalone\win32-1.82.1\pact\bin\pact-message.bat', with arguments ...
[2020-04-02T09:30:19.922Z] DEBUG: pact-node@10.8.0/15568 on MYPC: Created 'standalone\win32-1.82.1\pact\bin\pact-message.bat' process with PID: 20196
[2020-04-02T09:30:20.000Z] DEBUG: pact-node@10.8.0/15568 on MYPC:
The filename, directory name, or volume label syntax is incorrect.
然后我将其追踪到
.verify(synchronousBodyHandler(dogApiHandler))
inside的调用message-consumer.spec.ts
,最终导致了class Spawn
存在于spawn.ts
pact-foundation 的 pact-node 存储库中的那个。
为了正确调用 Pact Creation 逻辑的示例,我必须更改 package.json 文件:
"test:consumer": "nyc --check-coverage --reporter=html --reporter=text-summary mocha consumer/*.spec.ts"
至
"test:consumer": "nyc --check-coverage --reporter=html --reporter=text-summary ts-mocha consumer/*.spec.ts"
我的想法不多了,因为我的 javascript/node.js/typescript 技能相当有限。将不胜感激任何帮助。谢谢和干杯,pypapo