• 实验2


    《软件测试》实验

    实验二 单元测试                                                      

    实验目的

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

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

    实验内容

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

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

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

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

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

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

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

    Demo类:

    import java.util.HashMap;

    import java.util.Iterator;

    import java.util.Map;

    import java.util.Set;

    public class Demo {

        public void countWord(String str) {

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

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

           for (String word : wordsArray) {

               if (wordsMap.containsKey(word)) {

                  wordsMap.put(word, wordsMap.get(word) + 1);

               } else {

                  wordsMap.put(word, 1);

               }

           }

           Set<String> setKey = wordsMap.keySet();

           Iterator<String> itKey = setKey.iterator();

           while (itKey.hasNext()) {

               String word = itKey.next().toString();

               int count = wordsMap.get(word);

               System.out.println("单词    " + word + "  出现" + count + "次");

           }

        }

     

    }

    JUnit单元测试类:

    import static org.junit.Assert.*;

    import org.junit.Test;

     

    public class DemoTest {

     

        @Test

        public void testCountWord() {

           Demo demo = new Demo();

           demo.countWord("Hello World Hello Java Hello Test");

        }

    }

    测试:

     

    EclEmma代码覆盖率:

    3、 学习单元测试代码覆盖率工具的使用(结对项目

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

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

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

    Demo类:

    public class Demo {

        public void reverse(String str) {

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

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

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

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

           }

        }

    }

     

    JUnit单元测试类:

    import static org.junit.Assert.*;

    import org.junit.Test;

     

    public class DemoTest {

     

        @Test

        public void testReverse() {

           Demo demo = new Demo();

           demo.reverse("Hello World Hello Java Hello Test");

        }

    }

     

    测试:

     

    EclEmma代码覆盖率:

     

     

    4、博客作业,将题3作为你的博客作业,发布的自己的博客中,具体请关注http://www.cnblogs.com/mjutest中发布的作业要求。

  • 相关阅读:
    OpenSSL SSL_connect: Connection was reset in connection to github.com:443 git访问不到
    vue 阻止页面跳转 , 询问是否离开页面 , 确定后离开, 禁用浏览器返回功能
    SpringBoot: No active profile set, falling back to default profiles: default , 不一定是依赖的问题
    intellij . 关闭重复波浪线提示 (IDEA)
    编码
    git搭建个人仓库
    请求路径中添加版本号
    java调用maven
    迁移学习
    Promise实现
  • 原文地址:https://www.cnblogs.com/zhengjl/p/5345248.html
Copyright © 2020-2023  润新知