【发布时间】:2014-06-18 13:03:26
【问题描述】:
我可以在this wiki 页面之后使用 cmake 运行覆盖率检查。这非常简单,并且设置仪表板可以很好地查看浏览器上的代码覆盖率(后半部分)。但我不想每次都为了检查单个文件的进度而进行 ctest。实际上,我想在本地检查子目录的代码覆盖率,而不是使用第三方代码检查整个库。
那么,我们如何检查子目录的代码覆盖率。当然,我在 cmakelists.txt 中使用 add_test(....) 编写了一个测试。
我会尽量不用代码解释一下。
Class A {
public:
A() {}
....
so many methods ..
....
protected:
~A() {}
}; //end class A
接下来我写了一个测试:
//testA
int main()
{
A *a = new A();
a->method1();
a->method2();
...
}
现在在 CMakeLists.txt 中,我有:
add_test(testA ...)
所以当我运行 ctest 时,它将运行所有测试,包括 TestA。当然,我可以使用ctest -R "TestA"。
现在回到问题上来,我怎样才能只检查class A 的覆盖率。不运行所有测试还是只运行testA?
【问题讨论】:
标签: c++ testing cmake code-coverage ctest