2015-06-12 4 views
5

Wenn ich einen Komponententest mit intern ausführen, schreibt es console.log auf die Standardausgabe, was bei der Entwicklung der Tests nützlich ist.Wie Debugging-Informationen aus internen Funktionstests ausgegeben werden?

Funktionelle Tests scheinen jedoch die Ausgabe zu unterdrücken - das Schreiben in console.log tut nichts, und ich finde keine Möglichkeit, Text auf der Konsole auszugeben. Was bedeutet, wenn etwas schief geht, ist es sehr schwierig herauszufinden, warum.

Antwort

1

Wo console.log Ausgänge Text hängt davon ab, in welcher Umgebung die Tests in ausgeführt werden. Wenn Sie intern-client laufen, die nur Unit-Tests ausführen, wird der Testcode immer in der Node.js Umwelt und console.log schreibt nach stdout im Terminal.

Wenn Sie intern-runner ausführen, werden Komponententests im Browser ausgeführt, während Funktionstests in Node.js ausgeführt werden. Dies bedeutet, dass console.log Anweisungen in der Einheit Tests (die in der suites Eigenschaft der internen Konfiguration angegeben) nicht auf stdout im Terminal drucken, sondern stattdessen in der Konsole des Browsers ausgegeben werden. Log-Anweisungen in funktionale Tests (die in functionalSuites angegeben) werden an die Terminalausgabe ausgegeben. Die Ausnahme sind Protokollanweisungen in den Blöcken execute oder executeAsync, die an die Konsole des Browsers ausgegeben werden, da der Code in diesen Blöcken tatsächlich im Browser ausgeführt wird.

Verwandte Themen