本文讲述了Java教程————关于JUnit,你知道多少?具有很好的参考价值,希望对大家有所帮助。一起跟随六星小编过来看看吧,具体如下:
在我们开发Web应用时,经常会直接去观察结果进行测试。虽然也是一种方式,但是并不严谨。
作为开发者编写测试代码来测试自己所写的业务逻辑,以提高代码的质量、降低错误方法的概率以及进行性能测试等。而开发者写得最多就是单元测试。
引入spring-boot-starter-testSpringBoot的测试依赖。该依赖会引入JUnit的测试包,也是我们用的做多的单元测试包。
而Spring Boot在此基础上做了很多增强,支持很多方面的测试,例如JPA、MongoDB、Spring MVC(REST)和Redis等。
接下来主要是测试业务逻辑层的代码,REST和Mock测试。
JUnit介绍
JUnit是一个Java语言的单元测试框架。它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中最为成功的一个。
JUnit有它自己的JUnit扩展生态圈,多数Java的开发环境都已经集成了JUnit作为单元测试的工具。
这里使用的是JUnit4.x版本,JUnit中有两个重要的类Assume+Assert,以及重要的注解:BeforeClass、AfterClass、After、Before、Test和Ignore。
BeforeClass和AfterClass在每个类的开始和结束的时候运行,需要static修饰方法。而Before和After则是在每个测试方法的开始和结束的时候运行。
代码片段:TestDeployApplication.class是自己编写的Spring Boot启动类。
@RunWith(SpringRunner.class)
@SpringBootTest(classes = {TestDeployApplication.class})
public class UnitTest1 {
@BeforeClass
public static void beforeClass() {
System.out.println("=================BeforeClass================");
}
@AfterClass
public static void afterClass() {
System.out.println("=================AfterClass================");
}
@Before
public void beforeTest() {
System.out.println("before test");
}
@After
public void afterTest() {
System.out.println("after test");
}
@Test
public void test1() {
System.out.println("test1");
}
@Test
public void test2() {
System.out.println("test2");
}
}
JUnit的Assert类
Assert类中常用的方法:
assertEquals("提示信息",A,B):当判断A是否等于B,不等于就抛出错误。比较对象是调用的是equals()方法
assertSame("提示信息",A,B):判断对象是否相同
assertTrue("提示信息",A):判断条件A是否为真
assertFalse("提示信息",A):判断条件是否为假
assertNotNull("提示信息",A):判断对象是否不为空
assertNull("提示信息",A):判断对象是否不为空
assertArrayEqual("提示信息",A,B):判断数组A和数组B是否相等
JUnit的Suite
JUnit的Suite设计就是一次性运行一个或多个测试用例,Suite可以看作是一个容器,用来把测试类归类在一起,并把他们作为一个集合来运行,运行器启动Suite。
@RunWith(Suite.class)
@SuiteClasses({UnitTest1.class,UnitTest2.class})
public class MainTest{
}
更多相关技术内容咨询欢迎前往并持续关注六星社区了解详情。
想高效系统的学习Java编程语言,推荐大家关注一个微信公众号:Java圈子。每天分享行业资讯、技术干货供大家阅读,关注即可免费领取整套Java入门到进阶的学习资料以及教程,感兴趣的小伙伴赶紧行动起来吧。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!