Junit单元测试
单元测试就是针对最小的功能单元编写测试代码,Java程序最小的功能单元是方法,因此,单元测试就是针对Java方法的测试,进而检查方法的正确性
Junit单元测试框架
Junit是使用Java语言实现的单元测试框架,它是开源的
Junit可以灵活的选择执行哪些测试方法,可以一键执行全部测试方法
Junit可以生成全部方法的测试报告1.Junit单元测试是做什么的?
测试类中方法的正确性的
2.Junit单元测试的优点是什么?
Junit可以选择执行哪些测试方法,可以一键执行全部测试方法的测试
Junit可以生测试报告,如果测试良好则是绿色;如果测试失败则是红色
单元测试中的某个方法测试失败了,不会影响其他测试方法的测试快速入门
1.将JUnit的jar包导入到项目中
IDEA通常整合好了Junit框架,一般不需要导入
如果IDEA没有整合好,需要自己手工导入如下2个Junit的jar包到模块
2.编写测试方法:该测试方法必须是公共的无参数无返回值的非静态方法
3.在测试方法上使用@Test注解:标注该方法是一个测试方法
4.在测试方法中完成被测试方法的预期正确性测试
5.选中测试方法,选择“Junit运行” ,如果测试良好则是绿色;如果测试失败是红色Junit常用注解(Junit 4.xxxx版本)
Junit常用注解(Junit 5.xxxx版本)
开始执行的方法: 初始化资源
执行完之后的方法: 释放资源public class DemoJunit { @Test public void method() { System.out.println("method...."); } //@Test public void show() { System.out.println("show..."); } @Test public void fun() { System.out.println("fun..."); } @Before public void before() { System.out.println("before..."); } @After public void after() { System.out.println("after..."); } }
lombok插件
lombok常用注解介绍: @Setter 生成set方法 @Getter 生成get方法 @EqualsAndHashCode 生成equals和hashCode方法 @AllArgsConstructor 生成满参构造方法 @NoArgsConstructor 生成空参构造方法 @ToString 生成toString方法 @Data 生成set方法/get方法/equals和hashCode方法/toString方法 /*@Setter @Getter @EqualsAndHashCode @AllArgsConstructor @NoArgsConstructor @ToString*/ @Data @NoArgsConstructor @AllArgsConstructor public class Student { private String name;//姓名 private String gender;//性别 private int age;//年龄 private String address;//住址 private String email;//邮箱 /*@Override public String toString() { return "Student{" + "name='" + name + '\'' + ", gender='" + gender + '\'' + ", age=" + age + ", address='" + address + '\'' + ", email='" + email + '\'' + '}'; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Student student = (Student) o; return age == student.age && Objects.equals(name, student.name) && Objects.equals(gender, student.gender) && Objects.equals(address, student.address) && Objects.equals(email, student.email); } @Override public int hashCode() { return Objects.hash(name, gender, age, address, email); } public Student() { } public Student(String name, String gender, int age, String address, String email) { this.name = name; this.gender = gender; this.age = age; this.address = address; this.email = email; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getGender() { return gender; } public void setGender(String gender) { this.gender = gender; } public int getAge() { return age; }