1.单元测试
软件测试:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。
软件测试分类
- 单元 vs 集成测试
- 白盒 vs 黑盒测试
- 自动 vs 手动测试
- 回归测试
- 压力测试
- 。。。。。。
a.
单元测试:是指对软件中的最小可测试单元进行检查和验证。通常是一个函数/方法。
集成测试:将多个单元相互作用,形成一个整体,对整体协调性进行测试。
- 一般从构成系统的最小单元开始,持续推进到单元之间的接口直到集成为一个完成的软件系统为止。
b.
白盒测试:全面了解程序内部逻辑结构,对所有的逻辑路径都进行测试。一般由程序员完成。
黑盒测试:又名功能测试,检查程序功能是否按照需求规格说明书的规定正常使用。一般由独立的使用者完成。
c.
手动测试:手动执行程序,手动输入所需要的参数,手动检查程序结果是否满足预定的要求。
自动测试 :用测试程序批量、反复测试功能程序,并可自动检查功能程序输出结果是否满足预定的要求
d.
回归测试 :修改旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。
- 软件快速迭代开发过程中,新版本的连续发布(Daily/Nightly Build)
使得回归测试进行的更加频繁。
2.JUnit
JUnit:一个Java语言的单元测试框架
import static org.junit.Assert.*; //加载静态类
import org.junit.Assert;
import org.junit.Test;
public class TriangleTest {
@Test //注解方式,每个测试单元要加@test
public void test() {
assertEquals(true, new Triangle().judgeEdges(1,2,3));//断言
//Assert.assertEquals(false, new Triangle().judgeEdges(1,2,3));
}
}
JUnit Test:一次只能执行一个.java文件
Maven test: 可以批量执行.java文件