码迷,mamicode.com
首页 > 编程语言 > 详细

java单元测试

时间:2016-09-10 23:59:40      阅读:497      评论:0      收藏:0      [点我收藏+]

标签:

1、首先新建一个 Java 工程 —— TestJUnit。打开项目 TestJUnit的属性页 -> 选择“Java Build Path”子选项 -> 点选“Add Library…”按钮 -> 在弹出的“Add Library”对话框中选择 JUnit,并在下一页中选择版本 4.1 后点击“Finish”按钮。

技术分享

2、在项目 TestJUnit 根目录下添加一个新目录 testsrc,并把它加入到项目源代码目录中,以存放测试代码,使之与源代码分离。

技术分享

3、编写单元测试用例:

package com.meritit;

 

import static org.junit.Assert.AssertNull;

import static org.junit.Assert.AssertEquals;

import org.junit.Test;

 

public class TestWordDealUtil {

 

    //测试wordFormat4DB 一般的处理情况

    @Test public void wordFormat4DBNormal(){

        String target = "employeeInfo";

        String result = WordDealUtil.wordFormat4DB(target);

        assertEquals("employee_info", result);

    }

   

    //测试null时的处理情况

    @Test public void wordFormat4DBNull(){

        String target = null;

        String result = WordDealUtil.wordFormat4DB(target);

        assertNull(result);

    }

   

    //测试空字符串时的处理情况

    @Test public void wordFormat4DBEmpty(){

        String target = "";

        String result = WordDealUtil.wordFormat4DB(target);

        assertEquals("", result);

    }

   

    //测试当首字母大写时的情况

    @Test public void wordFormat4DBegin(){

        String target = "EmployeeInfo";

        String result = WordDealUtil.wordFormat4DB(target);

        assertEquals("employee_info", result);

    }

   

    //测试当尾字母为大写时的情况

    @Test public void wordFormat4DBEnd(){

        String target = "employeeInfoA";

        String result = WordDealUtil.wordFormat4DB(target);

        assertEquals("employee_info_a", result);

    }

   

    //测试多个相连字母大写时的情况

    @Test public void wordFormat4DBTogether(){

        String target = "employeeAInfo";

        String result = WordDealUtil.wordFormat4DB(target);

        assertEquals("employee_a_info", result);

    }

}

4、按照需求所写的代码如下:

package com.meritit;

 

import java.util.regex.Matcher;

import java.util.regex.Pattern;

 

/**

 * 对名称、地址等字符串格式的内容进行格式检查

 * @author lvxg

 */

public class WordDealUtil {

 

    /**

     * 将Java对象名称(每个单词的头字母大写)按照

     * 数据库命名的习惯进行格式化

     * 格式化后的数据为小写字母,并且使用下划线分割命名单词

     *

     * 例如:employeeInfo 经过格式化之后变为 employee_info

     *

     * @param name Java对象名称

     */

    public static String wordFormat4DB(String name){

        Pattern p = Pattern.compile("[A-Z]");

        Matcher m = p.matcher(name);

        StringBuffer sb = new StringBuffer();

       

        while(m.find()){

            m.appendReplacement(sb, "_"+m.group());

        }

        return m.appendTail(sb).toString().toLowerCase();

    }

}

5、运行测试,结果如图所示:

技术分享

 JUnit 运行界面有两个测试情况未通过。

 

 

 

 

 

 
 
 

java单元测试

标签:

原文地址:http://www.cnblogs.com/xingzhaoying/p/5860427.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!