课堂实验

在IDEA中以TDD的方式对String类和Arrays类进行学习

  • 测试相关方法的正常,错误和边界情况

  • String类

    • charAt
    • split
  • Arrays类

    • sort
    • binarySearch

代码如下:

import junit.framework.TestCase;
import org.junit.Test;
import java.util.Arrays; /**
* Created by Administrator on 2017/5/17.
*/
public class MathToolTest extends TestCase { String s = new String("I am a student.");
char[] c = new char[]{'b','a','e','m'}; @Test
public void testequals() {
assertEquals(1,1);
} @Test
public void testnormal() {assertEquals(5,MathTool.sum(1,4));} @Test
public void testboundary() {assertEquals(0,MathTool.sum());} @Test
public void testCharAt() {assertEquals('m',s.charAt(3));} @Test
public void testSplit() {assertEquals("am",s.split(" ")[1]);} @Test
public void testSort() {
java.util.Arrays.sort(c);
assertEquals('a',c[0]);
} @Test
public void testbinarySearch() {
java.util.Arrays.sort(c);
assertEquals(3,java.util.Arrays.binarySearch(c,'m'));
}
}

总结:

  • 在运用断言函数时,注意要灵活运用!比如测试字符串分割split()函数的时候,开始我想比对分割后的整个字符串数组,但断言函数不支持这种写法,于是转而比较其中一个字符串。
  • 在断言函数前有其他语句只能写在该测试方法中,不能写在方法之外。

问题:

  • 我在前面用import导入了java.util.Arrays包,但后面还是要用全名。比如java.util.Arrays.sort(c);

结果:

课堂实验-String类和Arrays类-LMLPHP

05-11 13:14