(一)软件测试的分类:

(1)黑盒测试:测试工程师
黑盒测试又叫做功能测试,主要是检测每个功能是否都能正常使用
在测试中,把程序看成一个不能打开的黑盒子,在完全不考虑内部程序结构的情况, 进行测试,只要针对软件界面和软件功能的测试。
(2)白盒测试:开发工程师
白盒测试又称为结构测试、透明盒测试、逻辑驱动测试或基于代码的测试,主要检测代码逻辑是否正常。
在白盒测试中,必须检查代码的逻辑和内部结构,从逻辑着手,得出测试的数据,按照程序内部结构进行测试。
这一方法是把测试看成是一个打开的合资,测试人员很清楚里面的内容是如何运作的。

(二)使用Junit4进行单元测试

Java语言怎么测试 java测试程序_测试类


Java语言怎么测试 java测试程序_测试类_02


Java语言怎么测试 java测试程序_Test_03


使用步骤

(1)把Junit4的测试类库引入到该项目中来

(2)定义一个测试类,起名字起称:待测试类+Test,例如:待测试类是Person,写成PersonTest

(3)注意:单元测试类,必须要有一个public权限的空参构造

(4)测试方法的书写:

@Test
	public void testPrintArr() {
		
	}

(5)编写测试代码:

@Test
	public void testPrintArr() {
		Integer[] arr = {1, 2, 3};
		
		ArrayTools.printArr(arr);
	}

(6)运行:选中要运行的测试方法的方法名称,鼠标右键 -> Run as -> Junit Test

Java语言怎么测试 java测试程序_Test_04


注意事项:方法时public修饰的,返回值为void,该方法上必须要有@Test注解

常见注解:

(1)@Test 要执行的测试方法
(2)@Before 每次执行测试方法之前都会执行的代码
(3)@After 每次执行测试方法只有都会执行的代码
(4)@BeforeClass 在所有方法执行之前执行,只在最初执行一次,只能修饰静态方法
(5)@AfterClass 在所有方法执行之后执行,只在最后执行一次,只能修饰静态方法

> package com.offcn.test;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;

import com.offcn.demos.ArrayTools;

public class ArrayToolsTest {

	public ArrayToolsTest() {}
	
	@AfterClass
	public static void testAfterClass() {
		System.out.println("@AfterClass执行了。。。");
	}
	
	@BeforeClass
	public static void testBeforeClass() {
		System.out.println("@BeforeClass执行了。。。");
	}
	
	@After
	public void testAfter() {
		System.out.println("@After执行了。。。");
	}
	
	@Before
	public void testBefore() {
		System.out.println("@Before执行了。。。");
	}
	
	@Test
	public void testPrintArr() {
		Integer[] arr = {1, 2, 3};
		
		ArrayTools.printArr(arr);
	}
	
	@Test
	public void test1() {
		int i = 10 / 0;
	}
}

(四)规范的Juint测试方式

1、已知要测试的类

2、根据待测试的类生成测试类:

Java语言怎么测试 java测试程序_Java语言怎么测试_05


3、选择要测试的方法:

Java语言怎么测试 java测试程序_Java语言怎么测试_06


Java语言怎么测试 java测试程序_测试方法_07