一、测试方法(Right-BICEP
6个值得测试的具体部位:
Right-结果是否正确?
B-是否所有的边界条件都是正确的?
I-能查一下反向关联吗?
C-能用其他手段交叉检查一下结果吗?
E-你是否可以强制错误条件发生?
P-是否满足性能要求?
二、测试部分
判断题目是否已出过。若出过,返回1,否则返回0。
 //******判断题目存在******
int ExistQues(LinkC C,Caculation Q)
{
LinkC temp;
temp=C->next;
while(temp)
{
if((temp->ques.num1==Q.num1)&&(temp->ques.num2==Q.num2)&&(temp->ques.sign==Q.sign))
return ; //当两个数字和算符与链表中的一样,则存在
else
temp=temp->next;
}
return ;
}

三、测试计划

R-通过改变一些题目难度(如数字范围)的参数,不停出题并记录出过的题目,看是否重复。

B-把数字控制在非常小的范围内,看是否还能运行正确。

I-运行后保存出题记录,去文件中查看。

C-控制出题范围,看出的题目数是否正确。如0~1,没有乘除,没有余数和负数的情况,应有7个题。

E-故意输入错误参数,看是否正常运行。

P-把参数(如出题数量)改成比较大的数,观察运行时的情况。

四、测试步骤

(1)R【30个,3列,0行,无乘除,0,5,无余数,无负数】

清空出题记录question.txt

运行程序,并更改参数,最后出题。

继续出题...直到题目都出完

 

经过观察,的确没有重复的题目。

(2)B【30个,3列,0行,无乘除,0,1,无余数,无负数】

改变出题范围,出题。

由于刚才出的题目是0~3的包括0~1,所以已无题可出。

(3)I【30个,3列,0行,无乘除,0,1,无余数,无负数】

现在退出系统,并保存出题记录。打开question.txt看是否记录下来了。

(4)C【30个,3列,0行,无乘除,0,1,无余数,无负数】

由于之前已经出过0~1之内的题目了,现在先清除记录,再出题。

(5)E【个,列,行,无乘除,0,5,无余数,无负数】

输入数值范围时,故意输入下限比上限大的数,系统会主动提示出错。

(6)P【999..个,3列,0行,无乘除,0,100,无余数,无负数】

改变出题数量

由于我设置的题目数量太大,我已经等了10分钟,题还没有出完。 说明出题数量是可以保证的,但是出题时间过长。

考虑到前面没有出负数的题,下面补充一下。

【30个,3列,0行,无乘除,-1,0,无余数,无负数】

BICEP单元测试计划——四则运算Ⅱ的更多相关文章

  1. BICEP单元测试计划-四则运算-测试

    一.6个值得测试的具体部位,他们能够提高你的测试技巧 Right-结果是否正确? B-是否所有的边界条件都是正确的? I-能查一下反向关联吗? C-能用其他手段交叉检查一下结果吗? E-你是否可以强制 ...

  2. BICEP单元测试——随机四则运算升级版

    一.测试方法 6个值得测试的具体部位: Right-结果是否正确? B-是否所有的边界条件都是正确的? I-能查一下反向关联吗? C-能用其他手段交叉检查一下结果吗? E-你是否可以强制错误条件发生? ...

  3. 初探YAML

    YAML何许物也?在XML泛滥的情况下,YAML的出现的确让人眼前一亮,在初步学习了YAML以后,粗略的总结了一下,拿出来和大家分享.[MindMap][参考文档]YAML Specification ...

  4. YAML初探

    http://www.cnblogs.com/chwkai/archive/2009/03/01/249924.html 1 概念YAML是一种人们可以轻松阅读的数据序列化格式,并且它非常适合对动态编 ...

  5. 记npm包开发全过程

    概述 为什么开发npm包? 如何开发? 如何写单元测试? package.json 如何发布模块? 如何使用? 为什么开发npm模块? NPM的全称是Node Package Manager,是一个N ...

  6. 如何成为一个优秀的java程序员

    Java程序员有许多应遵循的守则或最佳实践方式.本文概述了每个开发者最应该遵循的10条守则或戒律,如果不遵循它们,将会导致灾难性后果. 1. 为代码添加注释(Add comments to your ...

  7. 【Yaml】Yaml学习笔记

    转载:https://blog.csdn.net/moshenglv/article/details/52084899 YAML何许物也?在XML泛滥的情况下,YAML的出现的确让人眼前一亮,在初步学 ...

  8. 软件测试——Peer Review(简介)

    1. 同行评审的种类和对象 同行评审活动的关注点应该是工作产品中的缺陷,而不应该是工作产品的作者或者生产者,管理者也不应使用同行评审的结果去评价个人的行为. 同行评审的分类有很多种,自从IBM的Fag ...

  9. [转]成为优秀Java程序员的10大技巧

    转自:http://www.codeceo.com/article/10-good-java-programmer-tips.html Java程序员有许多应遵循的守则或最佳实践方式.本文概述了每个开 ...

随机推荐

  1. Linkedlist,arrayDeque,HashMap,linkedHashMap

    Linkedlist 1.extneds AbstractSequentialList, implements List<E>, Deque<E>, Cloneable, ja ...

  2. Linux日志

    一.Linux 常見的日志文件 /var/log/cron:你的 crontab 排程有没有实际被进行? 进行过程有没有发生错误?你的 /etc/crontab 是否撰写正确?在这个登录档内查询看看. ...

  3. fstab

    开机后,挂载windows盘失败, 进入了一个检测shell,该shell下是以只读方式挂载根分区的,要使fstab可写,要执行mount -o remount,rw / /etc/fstab文件的解 ...

  4. PHP开发大型项目的一点经验

    一.变量 最好是把所有的变量存储在一个数组中,这样在程序的开发中可以带来很多的方便,特别是当程序很大的时候.变量的命名就当适合自己的习惯,不管是用拼音还是英语,至少应当有一定的意义,以便适合记忆.变量 ...

  5. C#路径 (转载)

    一.获取当前文件的路径1.   System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName     获取模块的完整路径,包括文 ...

  6. 通过 XML HTTP 把文本文件载入 HTML 元素

    新建一个.aspx文件 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="01-通 ...

  7. php qr生成二维码

    二维码就是用在平面上用特定的几何图形记录数据信息的,QR码是常见的一种二维码.推荐使用生成QR码的php类库PHP QR Code. 例子: <?php   ini_set('display_e ...

  8. linux基本使用(一)

    分区1./ 根分区2. swap 交换分区(大小建议是内存的1~2倍)3. /home 分区4./boot 引导文件(启动加载)分区5./var 等,最低 要有前2个分区吧,最好有home分区,因为没 ...

  9. JSP标记

    JSP标记是JSP页面中很重要的组成部分,JSP标记包括指令标记.动作标记和自定义标记.其中自定义标记主要讲述与Tag文件有关的Tag标记. 一 指令标记page Page指令标记,简称page指令, ...

  10. for xml path('') 引发的数据不完整

    When you read Extensible Markup Language (XML) data from Microsoft SQL Server by using the SqlDataRe ...