![]() |
1
1
如果您更新您的问题以描述您正在使用的平台和编译器,这将非常有帮助。 我使用的一种策略是在可以跟踪所有指令的仿真器上运行系统。然后可以使用此指令跟踪计算代码覆盖率。 在UNIX上,您还可以使用ptrace()运行进程来单步执行应用程序,从而捕获执行的指令。 如果您只是想要函数调用跟踪,您可以对过程链接表进行一些恶意的黑客攻击,以跳转到一些专门的日志代码,但这可能太疯狂了。 同样,需要更多关于执行环境和详细级别的详细信息才能给出有用的答案。 |
![]() |
2
1
您是否有那么多特定于平台的代码,以至于您想要测量每个平台上的单元测试覆盖率?我的意思是,除非你有很多特定于平台的代码,否则你的单元测试覆盖率应该在你所有的目标上都是相似的,所以你可能不需要在你拥有的每个目标上衡量它。将特定于平台的代码移动到特定于平台的模块,这样公共代码的覆盖级别就不会被特定的代码降低,这可能会很有趣。 你是在看分支覆盖还是功能覆盖?如果是后者,您可以使用gcc来插入代码,以便每个函数将其名称或地址输出到一个文件,并编写一个脚本来聚合所有平台的结果。 抱歉只回答问题。。。嗯 |
![]() |
3
1
A. Page on code-coverage tools Brian Marick称之为GCT的东西通过源代码到源代码的转换实现代码覆盖率,因此您可以转换C代码,然后使用特定于平台的编译器构建它。我没有跟进细节。 |
![]() |
4
0
|
|
wavesinaroom · 断言结构向量长度 5 月前 |
![]() |
Tim Kirkwood · 比较空数据帧 6 月前 |
![]() |
Kamran Khan · 使用单元测试ASP。NET核心 10 月前 |
![]() |
paymer · 为什么我的代码没有删除我的单元测试生成的zip文件? 10 月前 |
![]() |
Ricky Mo · 角度测试如何模拟导入的const 11 月前 |
![]() |
Natty · Visual Studio中缺少“代码覆盖率结果” 11 月前 |