3137102440_曹庆发。单元测试和代码覆盖率工具的使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3137102440_曹庆发。单元测试和代码覆盖率工具的使用相关的知识,希望对你有一定的参考价值。

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

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

技术分享
 1 import java.util.ArrayList;
 2 import java.util.Collections;
 3 import java.util.Comparator;
 4 import java.util.HashMap;
 5 import java.util.List;
 6 import java.util.Map;
 7 import java.util.Scanner;
 8 import java.util.Map.Entry;
 9 
10 public class Count {
11     private static String str;
12     public  Count (String str){
13         Count.str=str;
14     }
15     public static void main(String[] args) {
16         System.out.print("请输入您要测试的字符串:");
17         Scanner in=new Scanner(System.in);
18         str = in.nextLine();
19         count(str);
20         
21     }
22     
23     public static void count(String str){
24         String[] items = str.split(" ");
25         Map<String, Integer> map = new HashMap<String, Integer>();
26         for (String s : items) {
27             if (map.containsKey(s))
28                 map.put(s, map.get(s) + 1);
29             else {
30                 map.put(s, 1);
31             }
32         }
33         List<Entry<String, Integer>> list = new ArrayList<Entry<String, Integer>>();
34         for (Entry<String, Integer> entry : map.entrySet()) {
35             list.add(entry);
36         }
37         Collections.sort(list, new EntryComparator());
38 
39         for (Entry<String, Integer> obj : list) {
40             System.out.println(obj.getKey() + "\t" + obj.getValue());
41         }
42     }
43 }
44 
45 class EntryComparator implements Comparator<Entry<String, Integer>> {
46     public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2) {
47         return o1.getValue() > o2.getValue() ? 0 : 1;
48     }
49 } 
技术分享

 

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

 

技术分享
import org.junit.Test;

public class CountTest {
    
    @Test
    public void testCount() throws Exception {
        String str="i love you! and you? ";
        Count.count(str);
    }

}
技术分享

 

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

 技术分享

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

import java.util.HashMap;
import java.util.Map;
public class test2_2 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String a = "how are you";
String[] b = a.split(" ");
String c = "";
for(int d=b.length;d>0;d--)
{
c=c+b[d-1]+" ";
}
System.out.println(c);
}
}

 

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

技术分享

以上是关于3137102440_曹庆发。单元测试和代码覆盖率工具的使用的主要内容,如果未能解决你的问题,请参考以下文章

四十Django单元测试:PGSQL数据库配置常用测试工具DB冲突方案和代码覆盖率实战

软件测试_实验二

golang 单元测试&&性能测试

单元测试

单元测试和代码覆盖率工具的使用

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