一、题目简介
测试一元一次方程的求解
二、源码的github链接
三、所设计的模块测试用例、测试结果截图
一元一次方程测试类:
package junittest;
import static org.junit.Assert.*;
import org.junit.After;import org.junit.Before;import org.junit.Test;import org.junit.runner.JUnitCore;public class MyMathTest{ //将需要测试的类,声明成成员变量MyMath math;//每次运行测试方法之前都会运行该方法@Beforepublic void setUp(){ math=new MyMath();}//每次运行测试用例之后都会运行该方法@Afterpublic void tearDown(){ math=null;}//测试一元一次方程的求解
//expected=ArithmeticException.class//相当于断言该测试方法将会抛出ArithmeticException异常@Test(expected=ArithmeticException.class)public void testOneEquation(){ System.out.println("================================="); System.out.println("================================="); System.out.println("测试一元一次方程求解"); //断言该方程求解应该为-1.8 assertEquals(math.oneEquation(5,9),-1.8,.00001); //断言当a==0时的情况 assertEquals(math.oneEquation(0,3),-1);}//测试一元二次方程的求解@Testpublic void testTwoEquation(){ System.out.println("================================="); System.out.println("================================="); System.out.println("测试一元二次方程求解"); double[] tmp=math.twoEquation(1,-3,2); //断言方程的两个解,一个为2,一个为3 assertEquals("第一个解出错",tmp[0],2,.00001); assertEquals("第二个解出错",tmp[1],3,.00001);}//程序的入口,直接运行该测试用例public static void main(String[] args){ //运行单个的测试用例 JUnitCore.main("junittest.MyMathTest");}}测试结果截图:
四、问题及解决方案、心得体会
在本次实验中,我懂得了使用Junit4应守如下规则
(1)测试用例类使用public修饰
(2)测试用例的测试方法使用public修饰
(3)测试用例的测试方法的返回值应该是void
(4)测试用例中测试方法不应该有任何参数
JUnit4详解、
1.@Test用来标注测试函数
2.@Before用来标注此函数在每次测试函数运行之前运行
3.@After用来标注此函数在每次测试函数运行之后运行
4.@BeforeClass用来标注在测试开始时运行;
5.@AfterClass 用来标注在测试结束时运行;
6.Assert类中有很多断言,比如assertEquals("期望值","实际值");
Assert类提供了大量的方法,包括基本断言,数字断言,字符断言,布尔断言,对象断言。其中assertEquals(Object expected,Object actual)内部使用equals()方法,用于判断两个对象的值是否相等.assertSame(Object expected,Object actual)内部采用"=="判断,用于判断两个对象是否来自于同一个引用.
学习过程中发现许多不足,还要跟同学们进行探讨,以便更好的学习。