"Catch" 単体テスト フレームワークを使い始めましたが、これまでのところ非常に優れています。私はVS組み込みのユニットテストフレームワークを非常に苦労して使用しました。
REQUIRE_THROWS_AS
マクロが期待どおりに動作しないことに気付きました
ドキュメントから:
REQUIRE_THROWS_AS( expression, exception type ) and CHECK_THROWS_AS( expression, exception type )
式の評価中に、指定された型の例外がスローされることを期待します。
書こうとすると
TEST_CASE("some test") {
SECTION("vector throws") {
std::vector<int> vec;
REQUIRE_THROWS_AS(vec.at(10), std::logic_error);
}
}
テストが失敗することを期待していますが、テストに合格したと表示されます。フレームワークにバグがありますか、それとも間違っていますか?