Java中经常使用的测试的方法
1、在代码中写些测试的方法,把你想要验证的东西,输出看一下(如:System.out.println();)。
2、可以用Debug的形式,跟踪代码执行,验证程序的逻辑是否正确(断点调试)。
3、使用junit测试框架
3.1 junit测试框架简述
JUnit是由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework)。
Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。
Junit是一套框架,继承TestCase类,就可以用Junit进行自动测试了。
3.2 junit测试框架的用途
可以让我们在编写代码的过程中,不断进行测试,而不需要主方法,且可以在方法测试前后都加上要执行的方法,
也可以在这个类测试前后都加上要执行的代码,用于启动一些测试方法前都需要的条件,及放于测试后常用于释放资源.
并且,可以断言测试,也就是测试一个方法是否可以得到你想要的返回值.
3.3 junit测试框架的使用
使用步骤:
1- 创建junit test类:
ctrl+n -> 输入junit test case -> 命名测试类 ->通过class under test指定要测试
的类。
2- 运行测试类
可以在测试类中,右键-> run as -> junit test 执行测试类中所有测试方法
可以在包管理器中,点击测试类,选中某一测试方法,右键 run as -> junit test
执行测试类中所有测试方法
知识点一:junit的使用(@Test)
知识点二:@Before@After以及@BeforeClass@AfterClass的异同
相同点:都是在需要初始化以及销毁对象时使用,都在开始结尾处调用
不同点:@Before@After每一次加载时before(),after()都会执行,
而@BeforeClass@AfterClass只在类加载前后运行,并且属性都是static的
知识点三:Assert断言:判断某个方法的结果是不是你想要的,第一个参数表示你期望的结果,第二个表示测试的结果。
代码示例如下:
public class MyMathTest{
private static MyMath mm ;
@BeforeClass
public static void aa(){
System. out .println( "aa" );
mm = new MyMath();
}
@AfterClass
public static void bb(){
System. out .println( "bb" );
mm = null ;
}
// @Before//表示应该先运行
// public void aa (){
// System.out.println(" aa ");
// mm = new MyMath();
// }
// @After//表示应该后运行
// public void bb (){
// System.out.println(" bb ");
// mm = null;
// }
//测试方法:public 没有返回值的,没有方法参数
@Test (timeout=10)
public void testAdd() {
int result = mm .add(1, 2);
//不要打印,利用assertEquals方法进行判断
assertEquals (3, result);
} }