単体テスト スイートを実行して、-fsanitize=address,undefined
すべてのサニタイザー エラーをreport.txt
ファイルに書き込みたいと考えています。デフォルトでは、すべてのサニタイザー エラーが stdout に書き込まれますが、ソフトウェアは stdout にも情報を書き込むため、エラーの検出が困難になります。私は試した:
export ASAN_OPTIONS="log_path=asan.log"
./mytests
また、テストを実行する前に C API を呼び出してみました。
#include <sanitizer/asan_interface.h>
__sanitizer_set_report_path("/tmp/asan.log")
ただし、どちらも機能していないようで、すべてのエラーが標準出力に書き込まれます。私は Debian テストを使用しています:
root@94e239ad460a:~# gcc --version
gcc (Debian 6.1.1-11) 6.1.1 20160802
Copyright (C) 2016 Free Software Foundation, Inc.
単体テストのサニタイザー エラーをどこかに保存できる別の方法はありますか?