Spring框架学习(六) junit单元测试

简介: Spring框架学习(六) junit单元测试

单元测试不是头一次听说了,但只是听说从来没有用过。一个模块怎么测试呢,是不是得专门为一单元写一个测试程序,然后将测试单元代码拿过来测试? 我是这么想的。学到spring框架这才知道单元测试原来是这么回事儿。


下面以上一篇文章中set注入的第一个实例为测试对象。进行单元测试。


1,拷贝jar包

junit-3.8.2.jar(4.x主要增加注解应用)


2,写业务类


public class User{
    privateString username;
    publicString getUsername() {
       returnusername;
    }
    publicvoid setUsername(String username) {
       this.username= username;
    }
    //添加方法
    publicString login() throws Exception{
       if("admin".equals(username){
          return"success";
       }else{
          return"error";
       }
    }
}


3,定义测试类


测试类最好单独建立项目,或者单独定义文件夹存储,需要继承junit.framework.TestCase


4,增加测试方法


测试方法必须是public,不应该有返回值,方法名必须以test开头,无参数


测试方法是有执行先后顺序,按照方法的定义先后顺序


多个测试方法对同一个业务方法进行测试,一般每个逻辑分支结构都有测试到。


public class TestUserextends TestCase{ 
    publicvoid testUser_Success() throws Exception{ 
       //准备数据
       Useraction = new User();
       action.setUsername("admin");
       //调用被测试方法
       Stringresult = action.login();
       //判断测试是否通过
       assertEquals("success",result); 
    }
}


运行程序,如果测试成功会出现如下图所示的结果



image.png


如果运行失败,有方法没有通过测试,那么就会显示出在哪个方法出错了。上图中绿色的条会变成红色的。


5,测试类的生命周期方法


//用来进行初始化操作
@Override
protectedvoid setUp() throws Exception {
   System.out.println("setUp...");
}
//用来做销毁操作
@Override
protectedvoid tearDown() throws Exception {
   System.out.println("tearDown...");
}


setUp方法会在每一个测试方法前执行一次。tearDown方法会在每一个测试方法后执行一次

目录
相关文章
|
2月前
|
测试技术 C# 数据库
C# 单元测试框架 NUnit 一分钟浅谈
【10月更文挑战第17天】单元测试是软件开发中重要的质量保证手段,NUnit 是一个广泛使用的 .NET 单元测试框架。本文从基础到进阶介绍了 NUnit 的使用方法,包括安装、基本用法、参数化测试、异步测试等,并探讨了常见问题和易错点,旨在帮助开发者有效利用单元测试提高代码质量和开发效率。
170 64
|
1月前
|
前端开发 Java 开发者
Spring生态学习路径与源码深度探讨
【11月更文挑战第13天】Spring框架作为Java企业级开发中的核心框架,其丰富的生态系统和强大的功能吸引了无数开发者的关注。学习Spring生态不仅仅是掌握Spring Framework本身,更需要深入理解其周边组件和工具,以及源码的底层实现逻辑。本文将从Spring生态的学习路径入手,详细探讨如何系统地学习Spring,并深入解析各个重点的底层实现逻辑。
64 9
|
2月前
|
前端开发 Java 数据库
SpringBoot学习
【10月更文挑战第7天】Spring学习
43 9
|
1月前
|
Java Kotlin 索引
学习Spring框架特性及jiar包下载
Spring 5作为最新版本,更新了JDK基线至8,修订了核心框架,增强了反射和接口功能,支持响应式编程及Kotlin语言,引入了函数式Web框架,并提升了测试功能。Spring框架可在其官网下载,包括文档、jar包和XML Schema文档,适用于Java SE和Java EE项目。
33 0
|
2月前
|
XML Java 数据格式
Spring学习
【10月更文挑战第6天】Spring学习
27 1
|
2月前
|
Java 测试技术 开发者
springboot学习四:Spring Boot profile多环境配置、devtools热部署
这篇文章主要介绍了如何在Spring Boot中进行多环境配置以及如何整合DevTools实现热部署,以提高开发效率。
102 2
|
2月前
|
前端开发 Java 程序员
springboot 学习十五:Spring Boot 优雅的集成Swagger2、Knife4j
这篇文章是关于如何在Spring Boot项目中集成Swagger2和Knife4j来生成和美化API接口文档的详细教程。
217 1
|
2月前
|
Java API Spring
springboot学习七:Spring Boot2.x 拦截器基础入门&实战项目场景实现
这篇文章是关于Spring Boot 2.x中拦截器的入门教程和实战项目场景实现的详细指南。
34 0
springboot学习七:Spring Boot2.x 拦截器基础入门&实战项目场景实现
|
2月前
|
Java API Spring
springboot学习六:Spring Boot2.x 过滤器基础入门&实战项目场景实现
这篇文章是关于Spring Boot 2.x中过滤器的基础知识和实战项目应用的教程。
38 0
springboot学习六:Spring Boot2.x 过滤器基础入门&实战项目场景实现
|
2月前
|
Java 关系型数据库 MySQL
springboot学习五:springboot整合Mybatis 连接 mysql数据库
这篇文章是关于如何使用Spring Boot整合MyBatis来连接MySQL数据库,并进行基本的增删改查操作的教程。
229 0
springboot学习五:springboot整合Mybatis 连接 mysql数据库