// 如果直接将代码定义在有参构造器中,
// 一旦创建有参对象可以直接调用以下代码
Assert 断言的意思 [əˈsɜːrt]
actual [ˈæktʃuəl] 真实的意思
expected是期待的意思 [ɪkˈspektɪd]
选中第一个将Junit框架自动导入进来
导入成功:一般框架的标准是定义在lib目录下的
单元测试方法,不是main方法也可以跑 testLoginName是自定义的方法,里面要用Junit单元测试框架的Assert(断言)类
在类空白的位置(在方法代码块外面,右键,就能跑整个类,跑整个类,里面的测试方法都能一起执行
在模块这里右键,可以跑整个模块:
package com.itheima.d1_junit;
import org.junit.Assert;
import org.junit.Test;
/**
* 测试类
*/
public class TestUserService {
/**
* 测试方法
* 注意点;
* 1. 必须是公开的,无参数 无返回值的方法
* 2. 测试方法必须使用@Test注解标记
*/
@Test
public void testLoginName(){ // 这个测试方法,没有返回值,没有参数
UserService userService = new UserService();
String rs = userService.loginName("admin", "123456");
// 进行预期结果的正确性测试: 断言 (断言他失败或者成功) Assert类 Assert 断言的意思 [əˈsɜːrt]
// expected是期待的意思: 这里的登录成功是期待的结果,rs是实际的结果
// 这个message相当于注释信息一样,提示信息
Assert.assertEquals("您的功能业务可能出现问题","登录成功",rs);
}
@Test // 标明这是一个测试方法
public void testSelectName(){ // // 这个测试方法,没有返回值,没有参数
UserService userService = new UserService();
userService.selectNames();
// 这里就不要断言了,能看出来bug
}
}
package com.itheima.d1_junit;
public class UserService {
public String loginName(String loginName , String passWord){
if("admin2".equals(loginName) && "123456".equals(passWord)){
return "登录成功";
}else {
return "用户名或者密码有问题";
}
}
public void selectNames(){
System.out.println(10/0);
System.out.println("查询全部用户名称成功~~");
}
}