【JAVA学习笔记】59 - JUnit框架使用、本章作业

项目代码

https://github.com/yinhai1114/Java_Learning_Code/tree/main/IDEA_Chapter15/src/com/yinhai/homework

JUnit测试框架

1.基本介绍

  1. JUnit是一个Java语言的单元测试框架

2.多数Java的开发环境都已经集成了JUnit作为单元测试的工具

2.如何使用

创建方法后,在方法体的开头使用@Test,点击Alt + Enter 选择JUnit5.4,点OK等待后就会加入JUnit框架,加入之后就可以在方法处右键Run使用

java 复制代码
public class Homework01 {
    public static void main(String[] args) {

    }
    @Test
    public void testList(){
        DAO<User> userDAO = new DAO<>();
        userDAO.save("1",new User(1, "hello"));
        userDAO.save("2",new User(2, "xiaowang"));
        userDAO.save("3",new User(3, "xiaobai"));
        System.out.println(userDAO.list());
        userDAO.update("213213213",new User(0,"xiaowang1"));
        System.out.println("修改后");
        System.out.println(userDAO.list());
        userDAO.delete("1");
        System.out.println(userDAO.list());
    }
}

class DAO<T>{
    private Map<String,T> map = new HashMap<>();

    @Test
    public void save(String id,T entity){
        map.put(id,entity);
    }
    @Test
    public T get (String id){//符合
        return (T)map.get(id);
    }
    @Test
    public void update(String id,T entity){//符合
        Set<String> keySet = map.keySet();
        for (String key : keySet) {
            if(!id.equals(key)){
                System.out.println("错误,没有该键值");
                return;
            }
        }
        map.put(id,entity);
    }
    @Test
    public List<T> list() {//使用迭代器也行 都一样
        Collection<T> values = map.values();
        System.out.println("---取出所有的value 放在List集合内----");
        List<T> list = new ArrayList<>(values);
        return list;
    }
    @Test
    public void delete(String id){
        if(map.remove(id) != null){
            System.out.println("删除成功");
        }else{
            System.out.println("失败");
        }
    }
}
class User{
    private int id;
    private String name;

    public User(int id, String name) {
        this.id = id;
        this.name = name;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", name='" + name + '\'' +
                '}';
    }
}
相关推荐
k***921610 分钟前
【C++】继承和多态扩展学习
java·c++·学习
weixin_4407305011 分钟前
java结构语句学习
java·开发语言·学习
航Hang*42 分钟前
Photoshop 图形与图像处理技术——第8章:图像的色彩与色彩调整和图像的输出与优化
图像处理·笔记·ui·photoshop
小桥流水---人工智能1 小时前
风电机组故障诊断与状态监测方法的研究局限性整理(背景笔记)
笔记
无名小猴2 小时前
TryHackMe——迎2025入门教程(一)
学习
NetDefend2 小时前
minimind-学习记录-环境的配置与跑通
学习
菩提小狗2 小时前
小迪安全笔记_第4天|扩展&整理|30+种加密编码进制全解析:特点、用处与实战识别指南|小迪安全笔记|网络安全|
笔记·安全·web安全
xian_wwq2 小时前
【学习笔记】OSI安全架构体系
网络·笔记·学习
越努力越幸运5082 小时前
vue学习二:
javascript·vue.js·学习
love530love2 小时前
Windows 11 下再次成功本地编译 Flash-Attention 2.8.3 并生成自定义 Wheel(RTX 3090 sm_86 专属版)
人工智能·windows·笔记·编译·flash_attn·flash-attn·flash-attention