Ich benutze GTEST mit GCC unter Linux. Ich möchte StackTrace bei Testversagen gedruckt sehen (sei es Assert oder signalbasierter Absturz). Es kann getan werden manually, aber ich frage mich, ob es als GTEST Build/run-Option (ohne mehr als eine Zeile Änderungen an meiner Codebasis) gesetzt werden kann?Gibt es eine Option, StackTrace zu drucken, wenn der Test in GTEST auf GCC fehlschlägt?
4
A
Antwort
1
Es gibt keine "vollständig" dokumentierte Option: --gtest_stack_trace_depth=10
(10 ist nur Beispielwert). es funktioniert EXPECT_CALL
wegen Nichtumsetzung - -
Es muss mit --gmock_verbose=info
Und ja nur verwendet werden, in gmock.
Für Behauptungen (wie ASSERT_EQ) hat es weniger Sinn - da ASSERT genau dort ist, wo es ist - seine Tack-Trace ist leer (was bedeutet, dass keine der Nicht-Gtest/UT-Code enthält).
Ein Beispiel:
some_test --gmock_verbose=info --gtest_stack_trace_depth=10
Wenn Sie es glauben * für ASSERT auch arbeiten soll - Sie könnten ein Problem aufwerfen hier: https://github.com/google/googletest/issues
Siehe http://stackoverflow.com/ a/26583406/6394138 – Leon