20175314薛勐 Arrays和String单元测试

Arrays和String单元测试(课下作业,选做)

要求

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

  • 测试相关方法的正常,错误和边界情况
  • String类
    • CharAt
    • Split
  • Arrays类
    • Sort
    • binarySearch

思路

String类:

  • CharAt(int index)方法
    该方法返回位于字符串的指定索引处的字符,字符串的索引从零开始,其中index是指字符的索引,即下标。
  • Split()方法
    该方法是用于分隔字符串,得到一个字符数组。

Arrays类:

  • Sort()方法
    该方法用于数组排序,默认是升序排列,但是可以通过修改compareTo中的返回值来变为降序排列。
  • binarySearch()方法
    该方法运于查找元素在数组中的位置。

代码

String类测试

testCharAt.java:

import org.junit.Test;
import junit.framework.TestCase;
public class testCharAt extends TestCase {
    String s = "I love studying more than anything!";
    @Test
    public void testCharAt() {
        assertEquals('o',s.charAt(3)); //1
        assertEquals(' ',s.charAt(6)); //2
        assertEquals('m',s.charAt(16)); //3
        assertEquals('t',s.charAt(21)); //4
        //assertEquals('e',s.charAt(4)); //5
        //assertEquals(' ',s.charAt(22)); //6
    }
}

testSplit.java:

import org.junit.Test;
import junit.framework.TestCase;
public class testSplit extends TestCase {
    String s = "I love studying more than anything!";
    @Test
    public void testSplit() {
        assertEquals("I",s.split(" ")[0]); //1
        assertEquals("love", s.split(" ")[1]); //2
        assertEquals("studying", s.split(" ")[2]); //3
        assertEquals("more", s.split(" ")[3]); //4
        assertEquals("than", s.split(" ")[4]); //5
        //assertEquals("anything!", s.split(" ")[5]); //6
        //assertEquals(".",s.split(" ")[3]); //4
    }
}

Arrays类测试

testSort.java:

import junit.framework.TestCase;
        import org.junit.Test;
        import java.util.Arrays;
public class testSort extends TestCase {
    int[] i = {5, 3, 1, 4};
    @Test
    public void testSort() {
        Arrays.sort(i);
        assertEquals(1, i[0]); //1
        assertEquals(3, i[1]); //2
        assertEquals(4, i[2]); //3
        assertEquals(5, i[3]); //4
        //assertEquals(1, i[3]); //5
    }
}

testbinarySearch.java:

import junit.framework.TestCase;
import org.junit.Test;
import java.util.Arrays;
import static java.util.Arrays.binarySearch;
public class testbinarySearch extends TestCase {
    int[] i = {5, 3, 1, 4};
    @Test
    public void testSort() {
        Arrays.sort(i);
        assertEquals(0, binarySearch(i,1)); //1
        assertEquals(1, binarySearch(i,3)); //2
        assertEquals(2, binarySearch(i,4)); //3
        assertEquals(3, binarySearch(i,5)); //4
    }
}

测试结果

String类测试

CharAt正常

CharAt异常

Split正常

Split异常

Arrays类测试

Sort正常

Sort异常

binarySearch正常

码云链接

参考资料

原文地址:https://www.cnblogs.com/SANFENs/p/10723270.html