나는 다음과 같이 내 테스트 스위트 의 방법을 쓰고 싶습니다C++ 부스트 단위 테스트 오류 메시지
void checkParams(arg1, arg2, arg3)
{
BOOST_REQUIRE(arg1==1);
BOOST_REQUIRE(arg2==2);
BOOST_REQUIRE(arg3==3);
}
는 그러나, 나는 어설 션이 실패 할 경우 stderr로 뭔가를 쓰고 싶어요. checkParams 인수에 실패 3
쓰기 지금 생성하는 메시지는 중요한 검사가 5 ==를 실패한 그냥 ARG1 = 5, ARG2 = 4에서 arg3 = : 첫 번째 어설 션이 실패 할 경우 예를 들어, , 내가 쓰고 싶은 1.
더 일반적으로 실패시 stacktrace를 생성하여이 실패로 이어지는 호출 을 볼 수 있습니다. 이 메서드는 모든 내 BOOST_AUTO_TEST_CASE 메서드에 의해 호출되지만 BOOST_AUTO_TEST_CASE 자체는 아닙니다.
어떻게하면됩니까?
또 다른 질문 : 나는 런타임 매개 변수를 제공하여 로깅 수준을 수정할 수 있습니다 알고, 내가 코드 내에서 LOG_LEVEL을 설정하는 방법
./test --log_level=all
?
부스트 1.40은 두 번째 매개 변수 (리터럴 문자열 만)로 BOOST_MESSAGE 을 배치 할 수 없습니다. – user231536
필요 없는데 BOOST_MESSAGE에 넣으세요. 올바른 버전으로 답변을 업데이트했습니다. –