给计算器写白盒测试用例Test case
来源:互联网 发布:淘宝如何鉴定质量问题 编辑:程序博客网 时间:2024/05/16 11:33
Calculator 代码
包括 加减乘除 求余、求模、比较大小、最大公约数、最小公倍数
package main.cn.edu.ciir;public class Calculator { public int result=0; public int n1; public int n2; public int getResult() { return result; } public int getN1() { return n1; } public void setN1(int n1) { this.n1 = n1; } public int getN2() { return n2; } public void setN2(int n2) { this.n2 = n2; } //两个数相加 public void add(int n1, int n2){ this.result=n1+n2; } //两个数相减 public void sub(){ this.result=this.n1-this.n2; } //两个数相乘 public void mul(){ this.result=this.n1*this.n2; } //两个数相除 public void div(){ this.result=this.n1/this.n2; } //求余 public void qiuyu(){ this.result=n1%n2; } //取模支持对负数进行运算,且结果的符号总是与被除数的符号保持一致 public void qiumo(){ this.result=(this.n1)/(this.n2); } //比较两个整数的大小 public int getmax(){ return this.n1>this.n2?this.n1:this.n2; } //求两个整数的最大公约数 public int Biggestgongyue(int a,int b){ if(a>b){ int temp=a; a=b; b=temp; } if(b%a==0)return a; else return Biggestgongyue(a,b%a); } //求两个数的最小公倍数 public int gongbei(int a,int b) { return (a*b)/this.Biggestgongyue(a,b); } }
Test case 代码
package test.cn.edu.ciir;import junit.framework.TestCase;//import static org.junit.Assert.*;//import junit.framework.TestCase;import main.cn.edu.ciir.Calculator;import main.cn.edu.ciir.Sample2;public class CalculatorTest extends TestCase { Calculator cal=new Calculator(); public void test相加后整数溢出() { try { cal.add(2147483640, 8); fail("2147483640和8相加后,会导致整数溢出," + "函数应该检测到这个问题并抛出异常通知!"); } catch (ArithmeticException e) { } } public void testAddtrue(){// cal.setN1(3);// cal.setN2(4); cal.add(3,4); assertEquals(7,cal.getResult()); } public void testAddfalse(){// cal.setN1(3);// cal.setN2(4); cal.add(3,4); assertEquals(8,cal.getResult()); } public void testsubtruet(){ cal.setN1(7); cal.setN2(4); cal.sub(); assertEquals(3,cal.getResult()); } public void testsubfalse(){ cal.setN1(7); cal.setN2(4); cal.sub(); assertEquals(4,cal.getResult()); } public void testmultrue(){ cal.setN1(7); cal.setN2(4); cal.mul(); assertEquals(28,cal.getResult()); } public void testmulfalse(){ cal.setN1(7); cal.setN2(4); cal.mul(); assertEquals(29,cal.getResult()); } public void testdivtrue(){ cal.setN1(28); cal.setN2(4); cal.div(); assertEquals(7,cal.getResult()); } public void testdivfalse(){ cal.setN1(28); cal.setN2(4); cal.div(); assertEquals(8,cal.getResult()); } public void testqiuyutrue(){ cal.setN1(28); cal.setN2(3); cal.qiuyu(); assertEquals(1,cal.getResult()); } public void testqiuyufalse(){ cal.setN1(28); cal.setN2(3); cal.qiuyu(); assertEquals(2,cal.getResult()); } public void testqiumotrue(){ cal.setN1(28); cal.setN2(3); cal.qiumo(); assertEquals(9,cal.getResult()); } public void testqiumofalse(){ cal.setN1(28); cal.setN2(3); cal.qiumo(); assertEquals(8,cal.getResult()); } public void testgetMaxtrue(){ cal.setN1(28); cal.setN2(3); cal.getmax(); assertEquals(28,cal.getmax()); } public void testgetmax1false(){ cal.setN1(28); cal.setN2(3); cal.getmax(); assertEquals(3,cal.getmax()); } public void testBiggestgongyuetrue(){ cal.setN1(28); cal.setN2(4); assertEquals(4,cal.Biggestgongyue(cal.getN1(),cal.getN2())); } public void testBiggestgongyuefalse(){ cal.setN1(28); cal.setN2(4); assertEquals(3,cal.Biggestgongyue(cal.getN1(),cal.getN2())); } public void testgongbeitrue(){ cal.setN1(28); cal.setN2(4); cal.Biggestgongyue(cal.getN1(),cal.getN2()); assertEquals(28,cal.gongbei(cal.getN1(),cal.getN2())); } public void testgongbeifalse(){ cal.setN1(28); cal.setN2(4); cal.Biggestgongyue(cal.getN1(),cal.getN2()); assertEquals(29,cal.gongbei(cal.getN1(),cal.getN2())); }}
阅读全文
0 0
- 给计算器写白盒测试用例Test case
- NUnitPartner--自动生成NUnit的测试用例(test case)
- 《我的RobotFramework书》1-2 测试用例, Test Case
- 【insigma】测试类JUnit Test Case
- test case
- Test Case
- 【开发也是好测试系列】(一)——用pytest编写Test Case
- Android junit test case 如何传参数给testcase ?
- Golang测试用例test
- 科学计算器 文法测试用例
- 科学计算器 文法测试用例
- Python中unittest 用不同的参数组合,测试同样的行为;使test case根据参数多次运行
- dpdk测试用例,test程序
- About Test Case
- Test case Result format
- Test Case Priority
- struts test case
- hive 的 test case
- eclipse启动时报错,出现An error has occurred.See the log file E:\源码\.metadata\.log.
- mysql utf8mb4 编码
- 11.23第16节课
- leetcode-14
- 一些Java编程上的小细节
- 给计算器写白盒测试用例Test case
- dpdk加速网络协议栈ANS,单core路由转发+1000条ACL 64字节达到8.43Mpps
- 2017/11/23
- ConcurrentHashMap
- 模糊匹配数据库中的json字段
- 11月22日云栖精选夜读:双11享Go了吗?2017阿里双11在线峰会续写科技盛宴!
- Android冷启动LaunchActivity部分
- linux中提示没有unzip命令解决方法
- mt2503 软件互相升级出现100% Restore失败问题定位