51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2669|回复: 1
打印 上一主题 下一主题

添加测试用例使得全面覆盖

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2010-6-13 04:24:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
想在一个排序的数组中用二进制搜索找到相应的数字。程序用二进制搜索是否在剩余的List中存在第一个数字。最简单的用例已经给出:
testcase1:existing element
action:Run./binsearch 1 1 3 5 7 9 15 17
expected result:找到数字
以下是gcov的输出结果,请添加测试用例使得全面覆盖
#include<stdio.h>
#include<stdlib.h>
int isElement(int value,int sortedArr[],int arrayLen){
if(arrayLen==0){
return 0;
}
else if(arrayLen==1){
return value==sortedArr[0];
}
else{
int midIndex=arrayLen/2;
int middleElement=sortedArr[midIndex];
if(middleElement==value){
return 1;
}
else if(value<middleElement){
return isElement(value,sortedArr,midIndex);
}
else{
return isElement(value,sortedArr+midIndex,arrayLen-midIndex);
}}}
int main(int argc,char**argv){
int value,*sortedArr,arrayLen,i;
if(argc<2){
printf("Syntex error,ues:elm e e1 e2 e3...\n");
exit(EXIT_FAILURE);
}
value=atoi(argv[1]);
arrayLen=argc-2;
sortedArr=malloc(sizeof(int)*arrayLen);
for(i=0;i<arrayLen;i++){
sortedArr=atoi(argv[i+2]);
if(i>0&&sortedArr<sortedArr[i-1]){
printf("Error:the list of values must be sorted\n");
exit(EXIT_FAILURE);
}}
if(isElement(value,sortedArr,arrayLen))
printf("The value was found\n");
else
printf("The value was not found\n");
return EXIT_SUCCESS;
}


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2010-8-6 18:19:20 | 只看该作者
1、数组大小为0,没有数字的情况
2、数组有两个值的情况
3、数组有三个值的情况
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-14 11:28 , Processed in 0.058613 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表