一、测试方法(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. poj2000

    为了凑今天的数,大水题.不解释了,说来惭愧. #include <stdio.h> int main(){ int n; int i,cnt,j; int tot; while(~scan ...

  2. 分享一个jquery写的类似于百度的搜索框,(可动态配置,可单列或者table格式,可填充数据)

    需求:类似于百度的搜索框,可配置,可单列可table格式,可填充数据.页面可多次使用,简单,易用. 想法:使用jquery,css,ajax,前台调用,后台返回json数据. jquery代码: va ...

  3. nginx 解决400 bad request 的方法(转载)

    nginx的400错误比较难查找原因,因为此错误并不是每次都会出现的,另外,出现错误的时候,通常在浏览器和日志里看不到任何有关提示. 经长时间观察和大量试验查明,此乃request header过大所 ...

  4. PHP 文件上传服务端及客户端配置参数说明

    文件上传服务器端配置: ·file_uploads = On, 支持HTTP上传 ·upload_tmp_dir = , 临时文件保存的目录 ·upload_max_filesize=2M, 允许上传 ...

  5. linux iostat命令详解 磁盘操作监控工具

    Linux系统中的 iostat是I/O statistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视. 它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况. ...

  6. apache日志文件详解和实用分析命令

    apache日志文件每条数据的请意义,以及一些实用日志分析命令. 一.日志分析  如果apache的安装时采用默认的配置,那么在/logs目录下就会生成两个文件,分别是access_log和error ...

  7. PHP加密解密函数

    <?php/***功能:对字符串进行加密处理*参数一:需要加密的内容*参数二:密钥*/function passport_encrypt($str,$key){ //加密函数 srand((do ...

  8. 使用mitmf 来绕过HSTS站点抓取登陆明文

    使用mitmf 来绕过HSTS站点抓取登陆明文 HSTS简介 HSTS是HTTP Strict Transport Security的缩写,即:"HTTP严格安全传输".当浏览器第 ...

  9. 在ASP.NET MVC中以post方式传递数组参数的示例

    最近在工作中用到了在ASP.NET MVC中以post方式传递数组参数的情况,记录下来,以供参考. 一.准备参数对象 在本例中,我会传递两个数组参数:一个字符串数组,一个自定义对象数组.这个自定义对象 ...

  10. 获取月份对应的day

    function getDaysInMonth(month, year) { , , , , , , , , , , , ]; //主要处理二月份的天数 ) && (year % == ...