gpt4 book ai didi

javascript - 可以在测试 block 输出中开 Jest 输出控制台日志

转载 作者:可可西里 更新时间:2023-11-01 02:23:04 24 4
gpt4 key购买 nike

因此,如果我将 console.log 放入 test 中,console.log 将在测试之后出现,例如

  authentication.spec.js
register
✓ should be able to insert (128ms)
✓ should fail because of duplicate (100ms)
✓ should have user id assigned (1ms)
login
✓ should be able to login for correct user (117ms)
✓ should fail for incorrect user (14ms)

console.log tests/unit/authentication.spec.js:110
we can see a message

我想看到的是:

  authentication.spec.js
register
✓ should be able to insert (128ms)
✓ should fail because of duplicate (100ms)
✓ should have user id assigned (1ms)
login
✓ should be able to login for correct user (117ms)
console.log tests/unit/authentication.spec.js:110
we can see a message
✓ should fail for incorrect user (14ms)

因此 console.log 应该出现 ✓ 在这种情况下应该能够为正确的用户登录

当我使用 Mocha 时,我使用的是 mocha-logger

最佳答案

据我所知,这并不容易实现,但有几个地方可以查找更多信息(不是现成的):

Jest 允许使用自定义记者:https://jestjs.io/docs/en/configuration.html#reporters-array-modulename-modulename-options ,因此您可以编写自己的记者并以不同方式显示输出。目前,虽然您没有获得单独测试的更新,只有测试套装,但这是 Dan Abramov 创建的问题:https://github.com/facebook/jest/issues/6616 .

来自上面的 github 线程 - Reporter 界面现在看起来像:

export default class BaseReporter {
onRunStart(results: AggregatedResult, options: ReporterOnStartOptions) {}

// these are actually for the test suite, not individual test results
onTestStart(test: Test) {}
onTestResult(test: Test, testResult: TestResult, results: AggregatedResult) {}

onRunComplete(contexts: Set<Context>, results: AggregatedResult ): ?Promise<void> {}
}

我没有找到将参数从测试传递到 testResult 对象的预定义方法。因此,您主要限于根据测试名称记录信息。下面是 testResult 对象中的 testResult 属性示例:

testResults:
[ { ancestorTitles: [Array],
duration: 5,
failureMessages: [],
fullName: 'add should add two numbers',
location: null,
numPassingAsserts: 0,
status: 'passed',
title: 'should add two numbers' } ],

如您所见,这是标准记者使用的所有信息:测试名称、持续时间、状态。作为引用,默认记者在这里:https://github.com/facebook/jest/blob/7b7fd01350/packages/jest-cli/src/reporters/default_reporter.js

关于javascript - 可以在测试 block 输出中开 Jest 输出控制台日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53038281/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com