最近、ラップトップをWindows 8にアップグレードして、W8およびWP8用に開発できるようにしました。単体テストにBoost.Testを使用するVisualStudio2010で作成されたプロジェクトがいくつかありました。プロジェクトをVS2012プロジェクトに変換しようとしましたが、問題が発生したため、以前と同じソースコードを使用して新しいVS2012プロジェクトを作成しました。ただし、すべてのユニットテストスイートを実行すると、例外がスローされます。make_report
デバッグしたところ、のメソッドでレポートを作成しようとすると例外がスローされることがわかりましたresults_reporter.ipp
。問題のある行は
case CONFIRMATION_REPORT:
s_rr_impl().m_formatter->do_confirmation_report( framework::get<test_unit>( id ), *s_rr_impl().m_output );
コードのどこかに、map
メモリが不良であるために例外があるオブジェクトがあります。Boost1.50.0を使用しています。最新のリリースである1.52.0も試しましたが、同じ結果になりました。VS2012はバグがありますか、それとも私が気付いていない設定/構成がありますか、またはWindows 7と8での開発に違いがありますか?
編集
VS2012とBoost1.50.0を使用した環境で例外をスローするテストの例を次に示します。
#define BOOST_TEST_MODULE exception.test
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_SUITE(SuiteTest)
BOOST_AUTO_TEST_CASE(exceptionTest){
BOOST_REQUIRE(true);
}
BOOST_AUTO_TEST_SUITE_END()