追加のロギングについては、現在のテストの説明を印刷できる必要があります。
どうすればこれを行うことができますか(Mocha BDDを使用)?
describe
へのコールバック内に直接いる場合は、describe
またはthis.fullTitle()
のタイトルに_this.title
_を使用して、describe
の階層タイトル(祖先のタイトル+このタイトルのタイトル)を取得できます。 )。 it
へのコールバック内にいる場合は、それぞれ_this.test.title
_またはthis.test.fullTitle()
を使用できます。そう:
_describe("top", function() {
console.log(this.title);
console.log(this.fullTitle());
it("test", function () {
console.log(this.test.title);
console.log(this.test.fullTitle());
});
});
_
上記の_console.log
_ステートメントは次のように出力します。
_top
top
test
top test
_
これは、ネストに応じてタイトルがどのように変化するかを示す、より完全な例です。
_function dump () {
console.log("running: (fullTitle)", this.test.fullTitle(), "(title)",
this.test.title);
}
function directDump() {
console.log("running (direct): (fullTitle)", this.fullTitle(), "(title)",
this.title);
}
describe("top", function () {
directDump.call(this);
it("test 1", dump);
it("test 2", dump);
describe("level 1", function () {
directDump.call(this);
it("test 1", dump);
it("test 2", dump);
});
});
_
_console.log
_ステートメントは次のように出力します。
_running (direct): (fullTitle) top (title) top
running (direct): (fullTitle) top level 1 (title) level 1
running: (fullTitle) top test 1 (title) test 1
running: (fullTitle) top test 2 (title) test 2
running: (fullTitle) top level 1 test 1 (title) test 1
running: (fullTitle) top level 1 test 2 (title) test 2
_
beforeEach
内から、this.currentTest.title
を試してください。
例:
beforeEach(function(){
console.log(this.currentTest.title);
})
Mocha 3.4.1
を使用します。
モカ「^ 5.1.0」の場合、console.log(this.ctx.test.title);
を使用できます