3137102127 林志坤(实验2)

《软件测试》实验

  实验二 单元测试   

实验目的

(1)           用JUnit编写单元测试;

(2)           学习代码覆盖率和性能监测工具的使用;

实验内容

1、 在博客园http://www.cnblogs.com/开通自己的技术博客

关注http://www.cnblogs.com/mjutest

并写一段个人简介(不少于100字)

林志坤微博http://www.cnblogs.com/tongqingdali/

 

2、 学习单元测试和代码覆盖率工具的使用

(1)写一个程序,用于分析一个字符串中各个单词出现的频率,并将单词和它出现的频率输出显示。(单词之间用空格隔开,如“Hello World My First Unit Test”);

(2)编写单元测试进行测试;

(3)用ElcEmma查看代码覆盖率,要求覆盖达到100%。

如下:

功能实现类Test2:

package com.kai.demo;

import java.util.HashMap;

import java.util.Iterator;

import java.util.Map;

import java.util.Set;

public class Test1 {

private Map<String, Integer> wordsMap;

public Test1(String strWords) {

wordsMap = this.getArray(strWords);

}

public Map<String, Integer> getArray(String strWords) {

String[] words_Array = strWords.split("");

Map<String, Integer> words_Map = new HashMap<String, Integer>();

int arrlength = words_Array.length;

for (int i = 0; i < arrlength; i++) {

if (!words_Map.containsKey(words_Array[i])) {

words_Map.put(words_Array[i], 1);

} else {

int currentNum = words_Map.get(words_Array[i]) + 1;

words_Map.remove(words_Array[i]);

words_Map.put(words_Array[i], currentNum);

}}

return words_Map;

}

public void OutputResult() {

Set s = wordsMap.keySet();

Iterator i = s.iterator();

while (i.hasNext()) {

Object o = i.next();

System.out.println(o + "出现了" + wordsMap.get(o)+"次");

}}}

//测试类

package com.kai.test;

import static org.junit.Assert.*;

import org.junit.Test;

import com.kai.demo.Test1;

public class Test1Test {

@Test

public void test() {

String strWords = "Hello World My First Unit Test";

Test1 test = new Test1(strWords);

test.OutputResult();

}}

 

3、 学习单元测试代码覆盖率工具的使用

(1)把一个英语句子中的单词次序颠倒后输出。例如输入“how are you”,输出“you are how”;

(2)编写单元测试进行测试;

(3)用ElcEmma查看代码覆盖率,要求覆盖率达到100%。

import java.util.Scanner;

public class Test {

 

public void reverse(String str) {

        String[] wordArray = str.split(" ");

        System.out.print("颠倒输出:");

        for (int i = wordArray.length - 1; i >= 0; i--) {

            

             System.out.print(wordArray[i] + " ");

        }

    }

    public static void main(String[] args) {

        Scanner input = new Scanner(System.in);

        System.out.println("请输入一句英语句子:");

        String str = input.nextLine();

        Test test = new Test();

        test.reverse(str);

    }}

 

 

原文地址:https://www.cnblogs.com/tongqingdali/p/5325318.html