Pact提供程序验证中的调试

时间:2020-06-05 09:01:31

标签: javascript pact

我目前正在尝试验证协议,并且提供程序测试中的响应正文不匹配。

我收到以下错误

JSON::ParserError:757: unexpected token at 'null'

我通过邮递员找回了正确的请求。无论如何,我可以检查传出的请求和传入的响应吗?

我尝试将logLevel设置为Debug,但没有提供预期的数据。

if("validates the expectations of api", async function () {
    let opts = {
        provider: "consumer",
        logLevel: "DEBUG",
        verbose: true,
        enablePending: true,
        providerBaseUrl: "http://10.54.12.223:8083",
        pactUrls: [
          path.resolve(process.cwd(), "./pacts/<name>.json")
        ],
        providerVersion: "1.0.0"
    }

    return new Verifier(opts).verifyProvider().then(output => {
        console.log("Verification complete!");
    }

})

1 个答案:

答案 0 :(得分:0)

没有响应主体,将很难诊断。 pact文件可能有用,但我怀疑它是响应正文不正确。您的代码可能未返回有效的JSON。在https://github.com/pact-foundation/pact-net/issues/139处看到类似的错误。

如果响应类型为application/json并且正文不是有效的JSON,则会出现此问题。

您使用的是哪个版本的Pact Node?旧版本的Pact中存在一个问题,该问题不允许使用顶级字符串或null(请参见上述问题)。