TypeError: nock(...).persist(...).log is not a function

TypeError: nock(...).persist(...).log is not a function

我正在尝试获取有关为什么我的箭尾模拟不正确的更多信息,但我无法使 persist().log() 正常工作。

这是测试:

it("should delete online absentee bid given its id", () => {
            const absenteeBidId = Faker.random.number();
            const absenteeBid = absenteeBidDataBuilder({ id: absenteeBidId });
            const expectedDeletedAbsenteeBid = {
                deleteAbsenteeBid: {
                    id: `${absenteeBidId}`
                }
            };
            const graphqlQuery = {
                query: `mutation {
                    deleteAbsenteeBid(
                        id: "${absenteeBidId}",
                        user_id: "${userId}",
                    ) {
                        id
                        subscription_id
                        amount
                    }
                }`
            };

            nock(onlineApiUrl)
                .persist()
                .log(console.log)
                .delete(`/orders/${absenteeBidId}`)
                .query({ user_id: userId })
                .reply(StatusCodes.OK, absenteeBid);

            return request
                .post(GRAPHQL_URI)
                .set(JWT, token)
                .send(graphqlQuery)
                .then(response => expectGraphqlResponse(response, expectedDeletedAbsenteeBid));
        });

Whosebug 希望我添加更多详细信息以便能够 post 这个问题,但我不知道还能告诉你什么。

.log 在 Nock v13 中被删除,因为它在调试时没有提供太多信息。 https://github.com/nock/nock/blob/main/migration_guides/migrating_to_13.md#breaking-changes

相反,您想使用 DEBUG 获取有关特定请求未被匹配的原因的更多信息。 https://github.com/nock/nock#debugging

做类似的事情:

user@local$ DEBUG=nock.* node my_test.js