Używam valgrind do sprawdzania pamięci. Aby skonfigurować valgrind, zdefiniować następujące zmienne w moim systemie build:
find_program(MEMORYCHECK_COMMAND valgrind)
set(MEMORYCHECK_COMMAND_OPTIONS "--trace-children=yes --leak-check=full")
Ponadto, tam jest mój valgrind plik tłumienie:
set(MEMORYCHECK_SUPPRESSIONS_FILE "${PROJECT_SOURCE_DIR}/valgrind_suppress.txt")
Po piszesz plików CMakeLists.txt i prawidłowo skonfigurować valgrind w nich można uruchomić następującą komendę:
cmake -G ... (to configure your build)
ctest -D ExperimentalBuild (this will build your code)
ctest -R testName -D ExperimentalTest (just runs the test)
ctest -R testName -D ExperimentalMemCheck (to run the test under valgrind)
To okiełznanie systemu kompilacji w celu uruchomienia automatyzacji testów lokalnie. Spodziewa uruchamianie:
ctest -R testName -D ExperimentalSubmit
obok, do poddania się (domyślnie) lub swoim pulpicie nawigacyjnym, ale nie ma potrzeby, aby przejść przez ten krok do uruchomienia, co chcesz. Wyniki zostaną zapisane w katalogu Testowanie/Temporary /.
Jak "poprawnie skonfigurować valgrind"? – ibizaman
Dobre pytanie ... Zmieniłem odpowiedź. – KlingonJoe