• 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正常

    码云链接

    参考资料

  • 相关阅读:
    【Windows核心编程】重载类成员函数new / new[] / delete / delete[]
    【数据结构和算法】 O(1)时间取得栈中的最大 / 最小元素值
    路由器与交换机做链路聚合
    怎么样判断两个IP地址是否在同一个网段
    sqlite常用的命令-增删改查
    5G时代的智慧灯杆需要哪种网关?
    什么是边缘计算网关?
    5G/4G工业智能网关在工业物联网的必要性
    基于5G/4G网关的冷冻设备远程监测及故障预警系统
    工业5G网关配置POE技术的优势
  • 原文地址:https://www.cnblogs.com/SANFENs/p/10723270.html
Copyright © 2020-2023  润新知