• 软件测试Lab1


    本次博客主要介绍软件测试课第一次上机实验的内容

    主要内容是

    1.安装 Junit , Hamcrest

    2.安装Eclemma

    3.写一个判断三角形类型的代码,并利用junit进行测试和Eclemma进行覆盖测试。

    实验过程:

    0.开启Eclipse , 新建Java Project

    1. 安装Junit , Hamcrest

    下载

    junit-4.12.jar 和 hamcrest-all-1.3.jar

    导入jar包

    右键工程->Build path->Configure Build Path

    选Libraries之后Add External JARs… 选择junit-4.12.jar 和 hamcrest-all-1.3.jar两个包之后如上图箭头,OK即可

    2.安装Eclemma

    在线安装,Help-> Eclipse Marketplace

    在Find里输入eclemma

    安装即可。

    3.写一个判断三角形类型的代码,并利用junit进行测试和Eclemma进行覆盖测试。

    在src中建一个包stlab1,建立Tri.java类用来测试三角型类型

    Tri.java

    package stlab1;
    
    public class Tri {
        public static String isTri(double a,double b,double c)
        {
            if (b >= a && b >= c)
            {
                double temp = b;
                b = a;
                a = temp;
                
            }
            if (c >= a && c >= b)
            {
                double temp = c;
                c = a;
                a = temp;            
            }
            if (b + c <= a)
                return "不是三角形";
            if (a == b && b == c)
                return "等边三角形";
            if (a == b || b == c || a == c)
            {
                return "等腰三角形";
            }
                
            if (a * a == b * b + c * c)
                return "直角三角形";
            return "一般三角形";
        }
    }

    之后建立test文件夹

    建立一个同名的包,建立测试类TriTest.java

    TriTest.java

    package stlab1;
    
    import static org.junit.Assert.*;
    
    import org.junit.After;
    import org.junit.AfterClass;
    import org.junit.Before;
    import org.junit.BeforeClass;
    import org.junit.Test;
    
    public class TriTest {
    
        @BeforeClass
        public static void setUpBeforeClass() throws Exception {
        }
    
        @AfterClass
        public static void tearDownAfterClass() throws Exception {
        }
    
        @Before
        public void setUp() throws Exception {
        }
    
        @After
        public void tearDown() throws Exception {
        }
    
        @Test
        public void test() {
            Tri tri = new Tri();
            assertEquals("等边三角形",tri.isTri(1, 1, 1));
            assertEquals("不是三角形",tri.isTri(0, 1, 2));
            assertEquals("直角三角形",tri.isTri(3, 4, 5));
            assertEquals("等腰三角形",tri.isTri(3, 3, 5));
            assertEquals("一般三角形",tri.isTri(4, 6, 7));
        }
    
    }

    详细工程文件见附1

    这里尽量多设计几组测试样例尽量覆盖全部的代码

    测试并运行

    Run as->JUnit test

    这里可以看到所有侧测试样例都通过,全绿则accept

    然后是测试覆盖

    点击这个按钮

    之后会发现代码里面有红绿黄三色,完全覆盖为绿色,不完全覆盖为黄色(比如分支语句只走了一条支路),未覆盖为红色

    可以看到这里基本覆盖全面。

    至此完成本次实验的内容

    附录1:Github Link:https://github.com/FomalhautYWT/SoftwareTest

  • 相关阅读:
    【OpenCV学习】XML的读写
    【学术研究基础】聚类分析学习
    【OpenCV学习】Laplace变换(视频边界检测)
    【OpenCV学习】DFT变换
    【英语天天读】生命的起跑线
    【OpenCV学习】yml的读取
    【OpenCV学习】Kmean均值聚类对图片进行减色处理
    【英语天天读】born to win
    WinFrom 中 label背景透明
    dev GridControl双击行事件
  • 原文地址:https://www.cnblogs.com/Durandal/p/5296542.html
Copyright © 2020-2023  润新知