2

グーグルテストでは、アサーションが失敗した場合にテストをスキップ済みとしてマークする方法はありますか?

例えばASSERT_TRUE(1 != 1)

したがって、上記のステートメントが失敗した場合、テストを失敗ではなくスキップとしてマークするためにgtestに何かを追加できますか?

4

1 に答える 1

12

私が知っていることではありません。おそらく正当な理由があります。失敗したときにだけテストを「スキップ」するのはちょっと安っぽいように見えるからです。テストを実行する前に失敗することがわかっている場合は、テスト名の前に追加して一時的に無効にすることDISABLED_ができます。

テストコードはまだコンパイルされるため、これはより良いオプションのように見えますが、テストが実行されないため、スイートの全体的な結果は影響を受けません。--gtest_also_run_disabled_tests出力は、無効になっているテストの数を通知することでわかりやすくなります。必要に応じて、 argを使用して、無効になっているテストをいつでも強制的に実行できます。

ちなみに、gtestは、テストを実行するのではなく、明示的にテストを失敗させる方法をASSERT_TRUE(1 != 1)提供します。

于 2012-11-16T20:21:04.927 に答える