在IDEA中以TDD的方式对String类和Arrays类进行学习,测试相关方法的正常,错误和边界情况
String类
Array类
import junit.framework.TestCase;
import org.junit.Test;
public class TestString extends TestCase{???
String str1 = new String("Hello java");???
String str2 = new String("你好,爪哇");???
String s = new String("http://jwc.besti.edu.cn/ wo zhen hao kan");???
@Test???
public void testcharAt() throws Exception {???????
assertEquals('l',str1.charAt(3));??? //正常情况???????
assertEquals(' ',str1.charAt(5));??? //正常情况???????
assertEquals('好',str2.charAt(1));?? //正常情况???????
assertEquals(':',s.charAt(4));?????? //正常情况???????
assertEquals('a',str1.charAt(9));??? //边界情况???????
assertEquals('你',str2.charAt(0));?? //边界情况???????
//assertEquals(' ',str1.charAt(-1));?????????? //异常情况???????
//assertEquals('哇',str2.charAt(5));?????????? //异常情况???
}???
@Test???
public void testsplit() throws Exception {???????
assertEquals("http://jwc",s.split("[.]")[0]);??? //正常情况???????
assertEquals("http://jwc.besti.edu.cn/",s.split(" ")[0]);??? //正常情况???????
assertEquals("jwc.besti.edu.cn",s.split("/")[2]);??? //正常情况???????
assertEquals("",s.split("\\p{Lower}")[0]);????? //边界情况???????
assertEquals("kan",s.split("\\s")[4]);????????? //边界情况???????
//assertEquals("jwc.besti.edu.cn",s.split("/")[1]);????????????? //异常情况???????
//assertEquals(" ",s.split(" ")[-1]);??????????????????????????? //异常情况???
}
}





import junit.framework.TestCase;
import org.junit.Test;
import java.util.Arrays;
public class TestArrays extends TestCase{???
int a[] = {2,5,6,4,9,3};???
char b[] = {'d','y','a','t','z','h'};???
String s[] = {"1","8","4","0","7","3"};???
@Test???
public void testsort() throws Exception {???????
Arrays.sort(a);???????
assertEquals("[2, 3, 4, 5, 6, 9]",Arrays.toString(a));???????
Arrays.sort(b,1,4);???????
assertEquals("[d, a, t, y, z, h]",Arrays.toString(b));???????
assertEquals('t',b[2]);???????
//assertEquals('a',b[0]);?????????? //异常情况???????
Arrays.sort(s);???????
assertEquals("[0, 1, 3, 4, 7, 8]",Arrays.toString(s));???
}???
@Test???
public void testbinarySearch() throws Exception {???????
Arrays.sort(a);???????
assertEquals(3,Arrays.binarySearch(a,5));???????
//assertEquals(-1,Arrays.binarySearch(a,10));???? //异常情况???????
//assertEquals(-2,Arrays.binarySearch(a,0));???? //异常情况???
}
}



问题1:在测试split方法时,发现正常情况下的运行报错,Actual返回值为引用

问题2:split方法在测试使用“/”符号作为分隔符时assertEquals("jwc.besti.edu.cn",s.split("/")[1]); 出现错误

问题4:测试sort方法时,Actual返回值为引用,并不是排序的结果

问题5:在测试split方法时想用“.”做分隔符,但是写成“\56”的形式编译时出现问题,必须写成“[.]”的形式

解决方法:暂时还没有解决……
https://gitee.com/wangzihong/20175209/tree/master/%E8%AF%BE%E4%B8%8A%E7%BB%83%E4%B9%A0%E5%8F%8A%E8%AF%BE%E4%B8%8B%E4%BD%9C%E4%B8%9A/test[]
原文:https://www.cnblogs.com/wangzihong0213/p/10745733.html