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

码云链接

参考资料

20175314薛勐 Arrays和String单元测试的更多相关文章

  1. 20175209 《Arrays和String单元测试》

    20175209 <Arrays和String单元测试> 题目 在IDEA中以TDD的方式对String类和Arrays类进行学习,测试相关方法的正常,错误和边界情况 String类 ch ...

  2. 学号20175313 《Arrays和String单元测试》第八周

    目录 Arrays和String单元测试 一.String类相关方法的单元测试 二.Arrays类相关方法的单元测试 三.测试过程中遇到的问题及其解决方法 四.码云链接 五.参考资料 Arrays和S ...

  3. Arrays和String单元测试

    20175227张雪莹 2018-2019-2 <Java程序设计> Arrays和String单元测试 要求 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关 ...

  4. Arrays和String单元测试-20175218

    Arrays和String单元测试 一.题目 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 String类 charAt split Arra ...

  5. 20175316 盛茂淞 Arrays和String单元测试

    Arrays和String单元测试 具体描述: 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 String类 charAt split Arr ...

  6. 20175229张智敏 Arrays和String单元测试

    Arrays和String单元测试 1.具体要求: 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 String类 charAt split A ...

  7. 20155228 2017-5-10 课堂测试:Arrays和String单元测试

    20155228 2017-5-10 课堂测试:Arrays和String单元测试 题目和要求 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 ...

  8. 《Java 程序设计》课堂实践项目-Arrays和String单元测试

    <Java 程序设计>课堂实践项目-Arrays和String单元测试 课后学习总结 目录 改变 Arrays和String单元测试实验要求 课堂实践成果 课后思考 改变 修改了博客整体布 ...

  9. 补交20145226蓝墨云班课 -- Arrays和String单元测试

    蓝墨云班课 -- Arrays和String单元测试 具体描述: 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 String类 charAt ...

随机推荐

  1. 学习笔记《Java多线程编程实战指南》四

    JAVA线程同步机制 线程同步机制:是一套用于协调线程间的数据访问及活动的机制,该机制用于保障线程安全以及实现这些线程的共同目标.java平台提供的线程同步机制包括锁.volatile关键字.fina ...

  2. MySQL数据库事务各隔离级别加锁情况--read committed && MVCC

    之前已经转载过几篇相关的文章,此次基于mysql 5.7 版本,从测试和源码角度解释一下RR,RC级别为什么看到的数据不一样 先补充一下基础知识 基本知识 假设对于多版本(MVCC)的基础知识,有所了 ...

  3. Java 工程师成神之路 | 2019正式版

    本文为转载,原文见以下链接:https://mp.weixin.qq.com/s/4AMzq87V6eW3YPgE0mCdSw 1 基础篇 01 面向对象 → 什么是面向对象 面向对象.面向过程 面向 ...

  4. Scala编程 摘录

    有件你会注意到的事情是,几乎所有的 Scala 的控制结构都会产生某个值.这是函数式语言所采用的方式,程序被看成是计算值的活动,因此程序的控件也应当这么做.你也可以把这种方式看做早已存在于指令式语言中 ...

  5. Flask--WTForms

    简介 WTForms是一个支持多个web框架的form组件,主要用于对用户请求数据进行验证. 安装:pip3 install wtforms 用户登录注册示例 1. 用户登录 当用户登录时候,需要对用 ...

  6. k8s 命令补全

    安装:apt-get install bash-completion source <(kubectl completion bash) echo "source <(kubec ...

  7. spring suite tool 添加namespace时只有bean一个

    在eclipse的windows->Preferences->Spring->Beans Support->Namespaces 在此记录此问题.

  8. 如何解决vux不兼容安卓低版本问题

    最近做移动端H5页面用VUX来写UI组件这块.ios测试的时候没啥大问题,不过在4.4版本的华为手机上测试就崩了.接下来详细记述下崩的几个点. 第一:vux自带的提示框,在低版本安卓系统上全不是居中显 ...

  9. [持续交付实践] 研发协作平台:DevOps背景下的组织结构

    前言 今年以来做的事情越来越杂,负责的技术方向越来越广,精力越来越分散(创业公司的典型特点),编码的时间越来越少,有时候也会觉得很疲惫没办法专注一个事情. 除了技术方向上的实践,组织上如何组建一个最优 ...

  10. #include 相关问题

    #include <> 和 #include “”的区别是#include <>先从系统默认的搜索路径开始搜索,#include “”是从当前目录开始搜索,如果未搜索到,都会继 ...