zoukankan      html  css  js  c++  java
  • 在IDEA中以TDD的方式对String类和Arrays类进行学习

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

    目的

    -老师主要想让我们知道如何检查自己的代码有无bug。让我们掌握如何测试自己的代码。TDD一种很重要的方式

    题目

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

    • String类

      • charAt
      • split
    • Arrays类

      • sort
      • binarySearch
    • 提交运行结果截图和码云代码链接,截图没有水印的需要单独找老师验收才有成绩

    原代码(实验二中StringBufferTest的代码)
    public class StringBufferDemo{
        StringBuffer buffer = new StringBuffer();
        public StringBufferDemo(StringBuffer buffer){
            this.buffer = buffer;
        }
        public Character charAt(int i){
            return buffer.charAt(i);
        }
        public int capacity(){
            return buffer.capacity();
        }
        public int length(){
            return buffer.length();
        }
        public int indexOf(String buf) {
            return buffer.indexOf(buf);
        }
    }
    
    测试代码
    import junit.framework.TestCase;
    import org.junit.Test;
    
    import static org.junit.Assert.*;
    
    /**
     * Created by Administrator on 2017/4/21 0021.
     */
    public class StringBufferDemoTest extends TestCase {
        StringBuffer a = new StringBuffer("StringBuffer");//测试12个字符(<=16)
        StringBuffer b = new StringBuffer("StringBufferStringBuffer");//测试24个字符(>16&&<=34)
        StringBuffer c = new StringBuffer("StringBufferStringBufferStringBuffer");//测试36个字符(>=34)
        @Test
        public void testcharAt() throws Exception{
            assertEquals('S',a.charAt(0));
            assertEquals('g',a.charAt(5));
            assertEquals('r',a.charAt(11));
        }
        @Test
        public void testcapacity() throws Exception{
            assertEquals(28,a.capacity());
            assertEquals(40,b.capacity());
            assertEquals(52,c.capacity());
        }
        @Test
        public void testlength() throws Exception{
            assertEquals(12,a.length());
            assertEquals(24,b.length());
            assertEquals(36,c.length());
        }
        @Test
        public void testindexOf() throws Exception{
            assertEquals(0,a.indexOf("Str"));
            assertEquals(5,a.indexOf("gBu"));
            assertEquals(10,a.indexOf("er"));
        }
    }
    
    运行截图

    代码托管

    收获

    本次补交实验过程中解决了长期以来的idea中的问题

    解决办法如下

    1.点击工具栏的File按钮----》project structure(或者选中project按键盘的F4)打开项目结构面板。

    2.点击Project Settings 下的Project,在Project compiler output中点击最右边的 ... 指定你的项目目录下的output文件夹(如果你的目录下没有,自己手动创建一个),然后点ok确定项目配置即可。

    实验感想:

    重温此次实践,对代码有了深刻认识,能模仿代码做一些修改,看懂代码作用,意义。对实验二和此次实验两次,对TDD 做了一些很好的诠释。伪代码到产品代码的路还很长,不仅仅是一个TDD,还需要大量的基础知识,和大量的代码行数。

  • 相关阅读:
    「训练反思18」 (8.16) 认清自己
    「训练日志17」 (8.12) 崩盘
    「训练日志16」 8.11 下坠
    「训练日志15」 (8.10)
    「训练反思15」(8.10)
    「训练日志14 」(8.9) 失败
    训练日志13 (8.7)
    Linux 设置vim指令
    训练日志12 (8.5)
    训练反思12 (8.5)
  • 原文地址:https://www.cnblogs.com/hpl20155329/p/6924897.html
Copyright © 2011-2022 走看看