Вы можете использовать ctest
командную строку options , чтобы найти точную строку в вашей иерархии CMakeLists.txt, где был сделан вызов add_test()
. Мы можем использовать опцию --show-only=json-v1
для отображения JSON форматированных метаданных о тесте:
ctest -R test_some_side_corner_item_XYZ --show-only=json-v1
Пример того, что это будет напечатано:
{
"backtraceGraph" :
{
"commands" :
[
"add_test"
],
"files" :
[
"C:/workspace/myproject/CMakeLists.txt"
],
"nodes" :
[
{
"file" : 0
},
{
"command" : 0,
"file" : 0,
"line" : 34,
"parent" : 0
}
]
},
...
This перечисляет файл CMakeLists.txt
, где add_test()
был вызван для этого теста, и номер строки ("line" : 34
), где он был вызван.
Из документации CMake опция --show-only
будет на самом деле не запускает тест, но отображает только его информацию:
-N,--show-only[=<format>]
Отключить фактическое выполнение тестов.
Эта опция заставляет CTest перечислить список тесты, которые будут запускаться, но на самом деле не запускаются. Полезно в сочетании с опциями -R
и -E
.
Обратите внимание, что опция -R
является регулярным выражением, которое соответствует тесту (ам), которое вы хотите, поэтому для получения точное совпадение , вы можете привязать название теста с помощью ^
и $
:
ctest -R ^test_some_side_corner_item_XYZ$ --show-only=json-v1