Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/139.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用CMake测试一个C++;应用程序没有内存错误? CMake中有一个C++项目,我已经实现了单元测试(使用GoogleTest)以及集成测试,即执行应用程序并使用ReGEXP检查结果(例如)。 add_test(NAME MyAppIntegration.testRefitRunMse COMMAND my_application "--refit=true") set_tests_properties(MyAppIntegration.testRefitRunMse PROPERTIES PASS_REGULAR_EXPRESSION "mse\\=1\\.53611e\\-05")_C++_Cmake_Ctest - Fatal编程技术网

如何使用CMake测试一个C++;应用程序没有内存错误? CMake中有一个C++项目,我已经实现了单元测试(使用GoogleTest)以及集成测试,即执行应用程序并使用ReGEXP检查结果(例如)。 add_test(NAME MyAppIntegration.testRefitRunMse COMMAND my_application "--refit=true") set_tests_properties(MyAppIntegration.testRefitRunMse PROPERTIES PASS_REGULAR_EXPRESSION "mse\\=1\\.53611e\\-05")

如何使用CMake测试一个C++;应用程序没有内存错误? CMake中有一个C++项目,我已经实现了单元测试(使用GoogleTest)以及集成测试,即执行应用程序并使用ReGEXP检查结果(例如)。 add_test(NAME MyAppIntegration.testRefitRunMse COMMAND my_application "--refit=true") set_tests_properties(MyAppIntegration.testRefitRunMse PROPERTIES PASS_REGULAR_EXPRESSION "mse\\=1\\.53611e\\-05"),c++,cmake,ctest,C++,Cmake,Ctest,现在,我想执行与上面相同的操作,但运行应用程序以检测内存错误,例如,只需运行/my_应用程序,然后使用valgrind检查内存错误。我该怎么做?请注意,我知道ctest-D ExperimentalMemCheck和ctest-T memcheck,但在这里我遇到了一个错误找不到文件DartConfiguration.tcl,它似乎与我不需要的仪表板配置有关。好,我找到了一个可能的解决方案。将这些行添加到myCMakeLists.txt: ## valgrind find_program(CTE

现在,我想执行与上面相同的操作,但运行应用程序以检测内存错误,例如,只需运行
/my_应用程序
,然后使用valgrind检查内存错误。我该怎么做?请注意,我知道
ctest-D ExperimentalMemCheck
ctest-T memcheck
,但在这里我遇到了一个错误
找不到文件DartConfiguration.tcl
,它似乎与我不需要的仪表板配置有关。

好,我找到了一个可能的解决方案。将这些行添加到my
CMakeLists.txt

## valgrind
find_program(CTEST_MEMORYCHECK_COMMAND NAMES valgrind)
INCLUDE(Dart)
生成所需的
DartConfiguration.tcl
,然后重新调用:

ctest -T memcheck
运行所有测试并检查内存错误