package sizeys; import java.text.DecimalFormat; import java.util.Scanner; public class H { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); try { System.out.print("请输入第一个数:"); double x = scanner.nextDouble(); System.out.print("请输入第二个数:"); double y = scanner.nextDouble(); System.out.print("请输入运算符:"); String s = scanner.next(); char z = s.charAt(0); js.yunsuan(x, y, z); } catch (Exception e) { System.out.println("请输入正确的数据!"); } } } package sizeys; import java.text.DecimalFormat; public class js { public static void yunsuan(double x, double y, Character z) { DecimalFormat r = new DecimalFormat(); r.applyPattern("#0.00"); if (z.equals('+')) { jia.yunsuan1(x, y); // System.out.println(x + "+" + y + "=" + r.format((x + y))); } else if (z.equals('-')) { jia.yunsuan2(x, y); // System.out.println(x + "-" + y + "=" + r.format((x - y))); } else if (z.equals('*')) { jia.yunsuan3(x, y); // System.out.println(x + "*" + y + "=" + r.format((x * y))); } else if (z.equals('/')) { if (y == 0) { System.out.println("被除数不能为0"); } else { jia.yunsuan4(x, y); // System.out.println(x + "/" + y + "=" + r.format((x / y))); } } else { System.out.println("无法识别改运算符"); } } } package sizeys; import java.text.DecimalFormat; public class jia { public static double yunsuan1(double x, double y) { DecimalFormat r = new DecimalFormat(); r.applyPattern("#0.00"); System.out.println(x + "+" + y + "=" + r.format((x + y))); return x + y; } public static double yunsuan2(double x, double y) { DecimalFormat r = new DecimalFormat(); r.applyPattern("#0.00"); System.out.println(x + "-" + y + "=" + r.format((x - y))); return x - y; } public static double yunsuan3(double x, double y) { DecimalFormat r = new DecimalFormat(); r.applyPattern("#0.00"); System.out.println(x + "*" + y + "=" + r.format((x * y))); return x * y; } public static double yunsuan4(double x, double y) { DecimalFormat r = new DecimalFormat(); r.applyPattern("#0.00"); System.out.println(x + "/" + y + "=" + r.format((x / y))); return x / y; } } package sizeys; import static org.junit.Assert.*; import org.junit.Test; public class jiaTest { @SuppressWarnings("static-access") @Test public void testYunsuan1() { jia core1 = new jia(); double a = core1.yunsuan1(9, -3); // 测一下:9和-3传入我的add方法里面,结果会不会是6? // assertEquals(6, a); } @Test public void testYunsuan2() { jia core2 = new jia(); double b = core2.yunsuan2(9, 4); } @Test public void testYunsuan3() { jia core3 = new jia(); double c = core3.yunsuan3(9, -1); } @Test public void testYunsuan4() { jia core4 = new jia(); double d = core4.yunsuan4(9, 5); } }
以下为黑盒法与白盒法测试技术:
1.黑盒法测试。这个测试主要就是以用户角度测试代码的功能与用途:
测试用例 | 输入条件 | 有效等价类 | 无效等价类 |
题目有效性判断 | 只允许数字 | 8 | OP |
输入字符的有效性判断 | (8,2,OP) | 8,2 | OP |
测试对象 | 测试说明 | 测试数据 | 测试结果 |
题目数量 | 输入非法数据 | t | 请输入正确的数据! |
加减乘除计算 | 输入符号有误 | 5 6 o | 无法识别该运算符 |
计算范围 | 精确度 | 11.0和11和11.00 | 正确 |
2.白盒法测试。对软件的过程性细节做细致的检查。
测试用例 | 用例说明 | 实际结果 |
加法处理 | 1.2+2.3 | 3.50 |
减法处理 | 9-4.2 | 4.80 |
乘法处理 | 11*3.0 | 33.00 |
除法处理 | 8.0/2 | 4.0 |
除零处理 | 5.0/0 | 抛出异常 |
代码覆盖率 | 100% | 100% |
同伴:201306114456,刁怿。
微博:http://www.cnblogs.com/diaoyi/