什么是 JUnit?
JUnit 是一个 Java 编程语言的单元测试框架。JUnit 在测试驱动的开发方面有很重要的发展,是起源于 JUnit 的一个统称为 xUnit 的单元测试框架之一。
JUnit 促进了“先测试后编码”的理念,强调建立测试数据的一段代码,可以先测试,然后再应用。这个方法就好比“测试一点,编码一点,测试一点,编码一点……”,增加了程序员的产量和程序的稳定性,可以减少程序员的压力和花费在排错上的时间。
第一步:配置JUnit:
先创建一个JAVA的Project然后按照以下方式添加JUnit的一个包
https://jingyan.baidu.com/article/93f9803f20bfaee0e46f5590.html
第二步:写测试的代码大概了解下怎么用:
先创建一个package,假如叫做com.JunitTest,然后在这个包里面写三个类:
1)被测试的类
2)用来测试的类
3)用来跑测试的类(也就是有main入口的类)
以下放上代码来讲解:
假如写了一个计算加减乘除的类,
这时候想测试一下自己写的这个类有没有问题,
就可以放在用来测试的类中开始测试
package com.JunitTest; /*写的一个计算加减乘除的类*/ public class Calculate { public int add(int a,int b) { return a+b; } public int substract(int a,int b) { return a-b; } public int multiply(int a,int b) { return a*b; } public int divide(int a,int b) { return a/b; } }
package com.JunitTest; import static org.junit.Assert.*; import org.junit.Test; /*这个类是用来测试的类*/ public class CalculateTest { /**/ @Test public void addTest() { assertEquals(6,new Calculate().add(3,3)); /*6是我们期望的结果,new Calculate().add(3,3)是用来计算我们的类能得到的结果的 test会自动将我们写的类得到的结果 与期望的结果进行比较 如果这里把6改成5,程序运行后就会说你测试没通过,因为你设置的期望值是得到5,却得到了6 */ } @Test public void substractTest() { assertEquals(1,new Calculate().substract(4,3)); } @Test public void multiplyTest() { assertEquals(12,new Calculate().multiply(4,3)); } @Test public void divideTest() { assertEquals(5,new Calculate().divide(15,3)); } }
package com.JunitTest; import org.junit.runner.*; import org.junit.runner.notification.Failure; /*这是用来跑测试的类 也就是有主函数入口的类,其实不写这个类,只用以上两个类就可以进行测试啦*/ /*有没有这个类有啥区别,你自己试试就明白知道啦*/ public class TestRunner { public static void main(String args[]) { Result result=JUnitCore.runClasses(CalculateTest.class); for(Failure failure : result.getFailures()) { System.out.println(failure.toString()); } System.out.println(result.wasSuccessful()); } }
参考资料:
https://blog.csdn.net/fulishafulisha/article/details/80158392
https://www.w3cschool.cn/junit/2wjx1hvc.html
入门后就可以看懂啦,接下来JUnit的进阶可以看W3Cschool讲的,蛮详细的。https://www.w3cschool.cn/junit/l13y1hvf.html
原文地址:https://www.cnblogs.com/1starfish/p/11478845.html
时间: 2024-10-19 04:43:21