0

我想开始使用 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.tspact-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

4

1 回答 1

0

这看起来可能是 Windows 上示例的错误 - 请您在 Pact JS 存储库中提出这个问题吗?它应该在我们的 Appveyor 构建上运行,但也许有一些我们没有考虑过的东西。

于 2020-04-03T22:19:57.057 回答