没有网的日子不好过,Junit4下不下来,先用androidTestCase实现一个。

遇到了几个bug。

首先是除0问题。

public void testDivide(){

result=calculate.divide(5, 2);

if(calculate.getIsError()){

assertEquals(flag, true);

}else{

assertEquals(2.5, result);

}

double result1=calculate.divide(5, 0);

if((flag=calculate.getIsError())){

assertEquals(flag, true);

}else{

assertEquals(2.5, result1);

}

double result2=calculate.divide(0, 5);

if(calculate.getIsError()){

assertEquals(flag, true);

}else{

assertEquals(0, result2);

}

}

我这里是这样解决的。看某一个ifelse即可。

对于计算器来说,他应该是知道除法能不能被零,以及除完的后果的,所以我为Calculate多设置了一个变量 isError,是否出错。如果被零除,认为出错,进行setIsError操作。即先判定是否出错。是,则断言结果assertEquals(flag, true);成立。否则assertEquals(2.5, result1);得到对应结果。

Bug2

图一:一个好长的错误。

这个当时看了好几遍,都没觉得有啥问题,害的我把数值全都变成整形,后来发现没问题,但总觉得不舒服,于是 看到了这里,然后两个数值相减小于一个很小的数,就认为他们相等,于是:

public void testMinus(){

double result2=calculate.minus(5,8.3);

double expected=-3.3;

if((expected-result2)<0.0000001){

setIsEqual();

}

assertEquals(true, isEqual);

}

在乘法操作发现了这些:

图二:16跟16.0可不相等。

于是:

public void testMultiple(){

result=calculate.multiple(5, 3.2);

assertEquals(16.0, result);

}

然后问题就基本解决完了。

一个简单的加减乘除的测试就完成了。

之后找到了,junit4这个jar包,通过配置只要把下载好的类库导入到文件中就可以了。(依然可以通过留邮箱的方式来获得这些开源文件,如果你找不到,或者不太愿意花点时间找的话。)

这里就给出比较简单的加减乘除的实现方式:

所有测试数据都是最简单的。没有做任何防护措施。

https://github.com/bzdwdmzjsmff

可以到这个地址下寻找相应源代码。

the third assignment of software testing的更多相关文章

  1. the first assignment of software testing

    Github ID:  bzdwdmzjsmff Github address: https://github.com/bzdwdmzjsmff alternative article: Increa ...

  2. the forth assignment of software testing

    软件测试用到的 pict33.msi. 加载安装即可. 顺步安装 使用背景: 假如现在有一个网站后台需要测试工程师进行测试用例设计.用常规的方法将参数列出: 帐户名: 空,不存在,超长,超短,正常 密 ...

  3. the second assignment of software testing

    作业2期心得体会.第一期仍有未完成的项目,比如应该指定所读课题的范围,是关于哪个方面的. 作业项目一: 安装并使用CheckStyle/PMD与FindBug 现在网络上查找了一番发现checkSty ...

  4. 101+ Manual and Automation Software Testing Interview Questions and Answers

    101+ Manual and Automation Software Testing Interview Questions and Answers http://www.softwaretesti ...

  5. Exploratory Software Testing

    最近找到去年上半年看过一本关于测试方面书籍的总结笔记,一直放在我的个人U盘里,当时是用Xmind记录的,现在重新整理下分享给大家了! James A.Whittaker [美] 詹姆斯·惠特克(软件测 ...

  6. 软件测试software testing summarize

    软件测试(英语:software testing),描述一种用来促进鉴定软件的正确性.完整性.安全性和质量的过程.软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对 ...

  7. 读书笔记-Software Testing(By Ron Patton)

    Software Testing Part I:The Big Picture 1.Software Testing Background Bug's formal definition 1.The ...

  8. software testing

    Software Testing Software testing is the process of evaluation a software item to detect differences ...

  9. Software Testing Techniques LAB 02: Selenium

    1. Installing 1. Install firefox 38.5.1 2. Install SeleniumIDE    After installing, I set the view o ...

随机推荐

  1. sougou输入法小技巧

  2. Discuz! x3.1的插件/utility/convert/index.php代码执行漏洞

    漏洞版本: Discuz! x3.1及以下版本 漏洞描述: Discuz! x3.1的插件/utility/convert/index.php存在代码执行漏洞,如果用户在使用完之后不删除,会导致网站容 ...

  3. NGINX(二)内存池

    ngxin中为了加快内存分配的速度,引入了内存池, 大块申请, 减少分配次数, 小块分割, 极大的提高了内存申请速度, 另外一个用途就是省去了很多内存管理的任务,因为这里没有提供内存释放的功能,也就是 ...

  4. [liu yanling]测试用例作用

    ⒈指导测试的实施 测试用例主要适用于集成测试.系统测试和回归测试.在实施测试时测试用例作为测试的标准,测试人员一定要按照测试用例严格按用例项目和测试步骤逐一实施测试.并对测试情况记录在测试用例管理软件 ...

  5. Ubuntu下添加Eclipse快捷方式

    首先是在/usr/share/applications下创建eclipse.desktop文件 1. 创建并编辑eclipse.desktop sudo vim /usr/share/applicat ...

  6. Java和C++的区别

    这是一个Java语言和C++语言之间的比较. 目录 [隐藏]  1 设计目标 2 语言特性 2.1 语法 2.2 语义 2.3 资源管理 2.4 库 2.5 运行时 2.6 模板 vs. 泛型 2.7 ...

  7. Kafka系列(一)安装和配置说明

    单机模式 修改kafak安装文件中 .../kafka_2.9.2-0.8.1.1/config 下面的server.properties 配置文件 1.broker.id=0   [默认不用修改,该 ...

  8. openstack 镜像自动扩容 resize拉伸

    The simplest way to support this in your image is to install the cloud-utils package (contains the g ...

  9. java 访问权限控制

    java提供四种访问权限: public > protected > 包访问权限(无关键词) > private 包:库单元 对于包访问权限,一个包内的都可以访问. 在eclipse ...

  10. hdu3394--Railway(点的双连通分量)

    一个公园中有 n 个景点,景点之间通过无向的道路来连接,如果至少两个环公用一条路,路上的游客就会发生冲突:如果一条路不属于任何的环,这条路就没必要修 问,有多少路不必修,有多少路会发生冲突 每一个连通 ...