金庆的专栏

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  423 随笔 :: 0 文章 :: 454 评论 :: 0 Trackbacks
gcov辅助脚本

(金庆的专栏)

代码覆盖测试查看结果时,需要进入代码所在目录,调用gcov,然后vi查看。

因为代码目录结构复杂,进出子目录太麻烦,所以用以下脚本直接生成与查看。

一般是用TSVN列出有更改的文件,将文件列表复制到文本,然后复制其中的CPP文件名作为参数,在代码根目录下执行脚本。

#!/bin/sh
# gcov.sh
# Usage: gcov.sh abc.sh
# Find file and cd to it, then call gcov and vim the result.

if [ $# -eq 0 ]
then
    echo Usage: $0 SOURCE_FILE
    echo Example: $0 abc.cpp
    exit
fi

DIR=`find . -name $1.gcda -exec dirname {} \;`
cd ${DIR}
gcov $1.gcda
vim +/##### $1.gcov

说明:
find 在当前目录下查找文件。
dirname 在查找结果中获取目录名
cd 进入目录
gcov 在该目录下执行 gcov
vim 打开gcov输出文件,参数 +/##### 用于查找 ##### 并跳到该行。
    ##### 是源代码未执行的标记。
    
该脚本不能处理多个文件具有相同文件名的情况。
posted on 2014-09-26 21:02 金庆 阅读(494) 评论(0)  编辑 收藏 引用 所属分类: 4. Linux/Unix

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理