本系列主要目的是做一个知识汇总,如今网上有各种各样的详细教程,如果哪里想了解更多,可以对应去搜索一下,加强理解,这就是精简版的意义。 如果能帮助到你,我很高兴。
测试平台
测试台是一个 程序,其工作是通过一系列称为测试用例的输入/输出检查来彻底测试另一个程序(或部分) 。
单元测试类
单元测试意味着为特定项目(或“单元”)创建和运行测试平台,如方法或类。
public class StatsInfoTest {
public static void main(String[] args) {
StatsInfo testData = new StatsInfo();
// 测试台
System.out.println("测试开始.");
// 测试get/setNum1
testData.setNum1(100);
if (testData.getNum1() != 100) {
System.out.println(" 测试get/setNum1失败");
}
// 测试setNum2
testData.setNum2(50);
if (testData.getNum2() != 50) {
System.out.println(" 测试get/setNum2失败");
}
// 检测 getAverage()
testData.setNum1(10);
testData.setNum2(20);
if (testData.getAverage() != 15) {
System.out.println(" 对10,20 测试getAverage()失败");
}
testData.setNum1(-10);
testData.setNum2(0);
if (testData.getAverage() != -5) {
System.out.println(" 对-10, 0 测试getAverage()失败");
}
System.out.println("测试完成");
}
}
一个好的测试平台的特点包括:
- 自动检查。例如:比较值,如testData.GetNum1() != 100. 为简洁起见,仅打印失败。
- 独立的测试用例。例如:GetAverage() 的测试用例分配了新的值,而不是依赖于早期的值。
- 代码覆盖率:执行每一行代码。一个好的测试平台会有比下面更多的测试用例。 不仅包括典型值,还包括 边界情况:不寻常或极端的测试用例值,如 0、负数或大数。
回归测试
通常测试台会与项目一起维护并且保留。
回归测试意思是在项目更改时,重新测试这个项目,如果本次更改能通过之前测试台的测试,则该项目叫已 ”回归“。
留意错误的测试单元也是很重要的,例如要修改一个项目,但是这个项目之前的错误测试单元没有被修改,在我们修改完之后,仍然可能存在遗留的错误。一般这种情况我们会去寻找代码本身的问题,但问题实际上是之前的错误测试单元没有被修改导致的。
对于商业软件,测试会占用很大比例的时间。
常用测试框架
最后分享一个测试框架Junit 5.
版权声明:本文为weixin_46442179原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。