linux白盒測試流程(3)
發表于:2015-03-25來源:uml.org.cn作者:不詳點擊數:
標簽:linux
現在分析下測試用例的成功率。這里用check作為搜索的關鍵字。這個關鍵字是在gdb腳本中自己定義的。 $grep - r check calnumber . res check number == 8 $1 = 1 check su
現在分析下測試用例的成功率。這里用check作為搜索的關鍵字。這個關鍵字是在gdb腳本中自己定義的。
$grep -r "check" calnumber.res
"check number == 8" $1 = 1
"check sum == 0" $2 = 1
"check quit == 0" $5 = 1
"check i == 5" $6 = 1
"check sum == 10" $7 = 1
"check i == 9" $8 = 1
"check sum == 36" $9 = 1
"check quit == 1" $10 = 1
$grep -r "check" calnumber.res | cut -f2
$1 = 1
$2 = 1
$5 = 1
$6 = 1
$7 = 1
$8 = 1
$9 = 1
$10 = 1
|
說明用例的10個比較均是正確的,成功率為100%。
2.用gcov得到代碼覆蓋率。
上一步結束后,在當前目前下會產生兩個文件:calnumber.gcda和calnumber.gcno。 這里不關注它們。
直接執行gcov calnumber.c 得到
$gcov calnumber.c
File `calnumber.c'
Lines executed:100.00% of 14
calnumber.c:creating `calnumber.c.gcov'
說明覆蓋率文件已經產生了,我們看下calnumber.c.gcov文件:
$cat calnumber.c.gcov
-: 0:Source:calnumber.c
-: 0:Graph:calnumber.gcno
-: 0:Data:calnumber.gcda
-: 0:Runs:2
-: 0:Programs:1
-: 1:#include <stdio.h>
-: 2:
-: 3:int main()
function main called 2 returned 100% blocks executed 100%
2: 4:{
2: 5: int i,sum,number;
2: 6: int quit;
2: 7: number = 8;
2: 8: sum = 0;
16: 9: for(i = 0; i <= number; i++)
-: 10: {
14: 11: sum += i;
-: 12: }
-: 13:
2: 14: if(sum != 36)
-: 15: {
1: 16: quit = 0;
1: 17: printf("sum = %d\n", sum);
-: 18: } else
-: 19: {
1: 20: quit = 1;
1: 21: printf("sum is 36\n");
-: 22: }
-: 23:
2: 24: if(quit) printf("Finish!\n");
-: 25:
2: 26:
原文轉自:http://www.uml.org.cn/Test/2009021210.asp
老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月
|