Junit————单元测试常用断言
一、assertThat
// assertThat 导包
import static org.hamcrest.Matchers.*;
import static org.hamcrest.MatcherAssert.*;
常用:is、equalTo、containsString
assertThat(参数值, 匹配符)
assertThat(actuals,is(expecteds)); //方法(实际值,(符合)预期);
1、is
assertThat(方法传参,is("期望值"));
//eg:
@Test
public void test1() {
//用例一
assertThat(dycs_20_03.l("A1234567", "12345678"),is("用户名不符合要求"));
}
2、equalTo
匹配两个值是相等
assertThat(方法传参,equalTo("期望值"));
eg:
@Test
public void test2() {
//用例二
assertThat(dycs_51_02.b(50, 1.5),equalTo("Normal"));
}
3、containsString
包含字符串 参数为String
eg:
@Test
public void test3() {
//用例三 判定1 T 判定2 T
assertThat(dycs_51_03.l("12345678901", "A1"),containsString("OK"));
}
二、assert
1、 assertEquals(expecteds,actuals)
匹配两个值是否相等,通常是第四题的最后用这个断言
eg:
@Test
public void test() {
//断言
assertEquals(exe,dycs_51_04.l(x1, x2));
}
三、特殊运行器
最后一题的格式
1、特殊运行器
//特殊运行器
@RunWith(Parameterized.class)
public class Test {
String x1;
String x2;
String exe;
2、构造函数
//构造函数
public dycs_51_04Test(String x1,String x2,String exe) {
this.x1 = x1;
this.x2 = x2;
this.exe = exe;
}
3、特殊函数参数化
//特殊函数参数化
@Parameters
public static Collection<Object[]>data(){
return Arrays.asList(new Object[][] {
//测试数据
{"","","用户名或密码不能为空"},
{"admin","123","登录成功"},
{"ad","123","请输入正确的用户名"},
{"admin","1234","请输入正确的密码"},
{"ad","1","请输入正确的用户名和密码"}
});
}