• 《软件测试》实验


    实验二 单元测试                                                      

    实验目的

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

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

    实验内容

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

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

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

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

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

    package cn.lin;

    public class Action {

       public void findWord(String str){//划分单词

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

            Action a = new Action();

            a.frequency(arrayWord);

    }

       public void frequency(String[] arrayWord){

            String[] word = new String[arrayWord.length];//存放遍历过的单词

            int time[]=new int[arrayWord.length];//存放记录单词出现次数

            boolean t = true;

            for(int i=0;i<arrayWord.length;i++){

                for(int j=0;j<arrayWord.length;j++){//遍历已遍历过的单词表              if(arrayWord[i].equals(word[j])){

                        System.out.println("单词重复!!!");

                        t=false;//如果单词重复则跳过

                    }

                }

                if(t==true){//单词初始次数为1

                    word[i]=arrayWord[i];

                    time[i]=1;

                    for(int j=i+1;j<arrayWord.length;j++){//遍历字符串,记录次数               if(arrayWord[i].equals(arrayWord[j])){

                            time[i]++;

                        }

                    }

                }

            }

            for(int i = 0;i<arrayWord.length;i++){//遍历输出次数

                if(word[i]!=null){

                    System.out.println("单词:"+word[i]+"出现了"+time[i]+"次。");

                }

            }

    }

    }

     

    package cn.lin;

    public classMain {

        /**

         * @param args

         */

        public static void main(String[] args) {

            // TODO Auto-generated method stub

            View v = new View();

        }

    }

     

    package cn.lin;

    import java.util.Scanner;

    public class View {

       public View(){

            Scanner input =new Scanner(System.in);

            System.out.println("请输入字符串:");

            String str=input.nextLine();

            Action a = new Action();

            a.findWord(str);

        }

    }

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

    package cn.lin;

    import static org.junit.Assert.*;

    import org.junit.Before;

    import org.junit.Test;

    public class ActionTest {

       @Before

       public void setUp() throws Exception {

       }

       @Test

       public void test() {

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

          Action action =new Action();

          action.findWord(str);

       }

    }

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

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

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

    package cn.jiai;

    import java.util.Scanner;

    public class test2 {

       /**

        * @param args

        */

       public static void main(String[] args) {

          // TODO Auto-generated method stub

          Scanner input = new Scanner(System.in);

          System.out.print("请输入要测试的字符串:");

          String str = input.nextLine();

          test2.test(str);

          }

          public static void test(String str){

          String[] strArr = str.split("\s+|[,]");

          StringBuffer result = new StringBuffer();

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

          result.append(strArr[i] + " ");

          }

          result.setCharAt(str.length()-0, (char) 0);

          System.out.println("颠倒顺序后的字符串:: "+result.toString());

          }

       }

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

    package cn.jia;

    import static org.junit.Assert.*;

    import org.junit.Before;

    import org.junit.Test;

    public class test2Test {

       @Before

       public void setUp() throws Exception {

       }

       @Test

       public void test() throws Exception {

       String str="how are you";

       test2.test(str);

       }

       }

  • 相关阅读:
    [core java学习笔记][第五章继承]
    [core java学习笔记][第四章对象与类]
    【转载】Maven中的BOM概念
    【转载】关于docker某些有用的文章
    【转载】linux Jumpserver跳板机堡垒机部署安装使用教程
    四:(之五)Dockerfile语法梳理和实践
    四:FAQ附录(容器交互,镜像交互,镜像导出)
    四:(之四)基于已有镜像构建自己的Docker镜像
    四:(之三)制作镜像和一些docker命令
    四:(之一和之二) docker架构和底层技术分析(C/S架构)
  • 原文地址:https://www.cnblogs.com/LJQ4228/p/5327036.html
Copyright © 2020-2023  润新知