标签:
题目一:
1. 写一个Java程序,用于分析一个字符串中各个单词出现的频率,并将单词和它出现的频率输出显示。(单词之间用空格隔开,如“Hello World My First Unit Test”);
2. 编写单元测试进行测试;
3. 用ElcEmma查看代码覆盖率,要求覆盖率达到100%。
Demo类:
1 import java.util.HashMap; 2 import java.util.Iterator; 3 import java.util.Map; 4 import java.util.Set; 5 6 public class Demo { 7 8 public void countWord(String str) { 9 String[] wordsArray = str.split(" "); 10 Map<String, Integer> wordsMap = new HashMap<String, Integer>(); 11 for (String word : wordsArray) { 12 13 if (wordsMap.containsKey(word)) { 14 wordsMap.put(word, wordsMap.get(word) + 1); 15 } else { 16 wordsMap.put(word, 1); 17 } 18 } 19 20 Set<String> setKey = wordsMap.keySet(); 21 Iterator<String> itKey = setKey.iterator(); 22 while (itKey.hasNext()) { 23 String word = itKey.next().toString(); 24 int count = wordsMap.get(word); 25 26 System.out.println("单词 " + word + " 出现" + count + "次"); 27 28 } 29 } 30 31 }
JUnit单元测试类:
1 import static org.junit.Assert.*; 2 import org.junit.Test; 3 4 public class DemoTest { 5 6 @Test 7 public void testCountWord() { 8 Demo demo = new Demo(); 9 demo.countWord("Hello World Hello Java Hello Test"); 10 } 11 12 }
测试:
EclEmma代码覆盖率:
软件测试第二次作业 - 写一个Java程序,用于分析一个字符串中各个单词出现的频率,并将单词和它出现的频率输出显示。
标签:
原文地址:http://www.cnblogs.com/zwblog/p/5322758.html