したがって、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
は✓ should be able to login for correct user
とともに表示されるはずです。
Mochaを使用していたとき、mocha-logger
を使用していました
私が知る限り、これは簡単には不可能ですが、さらに情報を探すためのいくつかの場所があります(すぐに使用できます):
Jestでは、カスタムレポーターを使用できます。 https://jestjs.io/docs/en/configuration.html#reporters-array-modulename-modulename-options なので、独自のレポーターを作成して出力を表示できます異なって。現時点では、個別のテストの更新は取得せず、テストスーツだけを取得しますが、ダンアブラモフが作成した問題は次のとおりです。 https://github.com/facebook/jest/issues/6616 .
上記のgithubスレッドから-現時点のレポーターインターフェイスは次のようになります。
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> {}
}
Testから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
はい、ログに記録できます。 package.jsonに--verbose false
を追加する必要があるかもしれません"test"
;
例:"scripts": { "test": "jest --watch --verbose false" }