赞
踩
实验要求:要求利用 JUnit 单元测试工具,编写计算器的加、减、乘、除功能的 功能代码和测试代码,并完成相应的单元测试。
该实验用到的两个工具:
eclipse;
JUit 4;(一般来说Eclipse在安装的时候就集成了 JUnit,若不存在可以在GitHub中下载相关jar包并导入到库中,相关链接:JUit4)
1.在 Eclipse 中创建一个 Java 项目 calculator,并添加 JUnit 类库,生成 JUnit 测试框架
2.在 Package Explorer 里的 src 上点击鼠标右键,创建一个包,并命名为 weind;在 weind 包上再创建 class,并命名为 calculator1
3.编写 calculator1.java 的源代码,实现简单的加、减、乘、除计算功能。
calculator1.java 的源代码如下:
package weind; public class calculator1 { public int add(int a, int b) { return a + b; } public int minus(int a, int b) { return a - b; } public int multiply(int a, int b) { return a * b; } public int divide(int a, int b) { return a / b; } }
5.在项目上点击右键,创建 source floder,并命名为 testcalculator1。
6.针对待测试类创建 JUnit Test Case。在待测试类 calculator1 上点击鼠标 右键,新建一个 JUnit Test Case,并修改测试代码存放路径。选择 Browse 按钮, 修改存放路径为 testcalculator1 下。系统为测试代码类自动命名为 calculator1Test
7.添加测试方法。仍然在 New JUnit Test Case 对话框中,点击 Next,添加 之前编写的加、减、乘、除四个测试方法。点击 Finish 关闭对话框,就可查看到 在 testcalculator1 下存放的 calculator1Test.java 中显示出四个测试方法
8.编写 Add 方法的测试代码。在 public void testAdd ( ) 中编写如下代码, 页面显示如下
9.编写其他方法的测试代码。
calculator1Test.java 源代码如下:
import static org.junit.Assert.assertEquals; import org.junit.Test; import weind.calculator1; public class calculator1Test { @Test public void testAdd() { // fail("Not yet implemented"); calculator1 c = new calculator1(); // 实例化一个对象 int result = c.add(2, 5); // 对象调用被测方法及传参,add 方法有两个参数 assertEquals(7, result, 0.0); // Assert.assertEquals (7, result); //使用断言比较预期结果和实际结果 } @Test public void testMinus() { // fail("Not yet implemented"); calculator1 c = new calculator1(); // 实例化一个对象 int result = c.minus(2, 5); assertEquals(-3, result, 0.0); } @Test public void testMultiply() { // fail("Not yet implemented"); calculator1 c = new calculator1(); // 实例化一个对象 int result = c.multiply(2, 5); assertEquals(10, result, 0.0); } @Test public void testDivide() { // fail("Not yet implemented"); calculator1 c = new calculator1(); // 实例化一个对象 int result = c.divide(10, 5); assertEquals(2, result, 0.0); } }
PS: assertEquals ()函数是Java 中JUnit 框架中的一个断言方法,用于比较两个值是否相等,如果不相等则抛出一个异常
assertEquals(expectedValue, actualValue, message);其中
expectedValue
表示期望值,actualValue
表示实际值 ,message
是断言失败时显示的错误信息。如果expectedValue
等于actualValue
,则断言通过;如果不等,则抛出一个AssertionError
异常。需要注意的是,在使用
assertEquals
之前,需要导入 JUnit 的包,并且这个方法通常用于单元测试,而不是在生产环境中的代码中使用。
10.使用 JUnit 运行测试代码。在 calculator1Test.java 中点击鼠标右键,选中Run As中的JUit Test运行程序
11.查看 JUnit 中的测试结果。
实验结果: 当最后测试的结果如下图所示,就说明测试通过。
12.若修改assertEquals ()函数中的值, 使测试结果不正确则会出现异常报错
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。