zoukankan      html  css  js  c++  java
  • 一、第一个简单Junit测试

    1.新建一个java项目MyJunitTest,buildPath导入Junit4库,或者手动导入jar包

    2.在src目录下新建包com.myz.util,新建类Calculate

    package com.myz.util;
    
    public class Calculate {
        //
        public int add(int a,int b) {
            return a + b;
        }
        
        //
        public int subtract(int a, int b) {
            return a - b;
        }
        
        //
        public int multiply(int a,int b) {
            return a * b;
        }
        
        //
        public int divide(int a ,int b) {
            return a / b;
        }
    }

    3.新建source folder起名为test,其下新建包com.myz.util(包名必须保持一致)

    4.点击Calculate.java,右键新建一个JUnit Test Case,起名为CalculateTest,放在test源文件夹下的com.myz.util下,与被测试类保持一致

    package com.myz.util;
    
    import org.junit.Test;
    
    
    import static org.junit.Assert.*;
    
    /**
     * 
     * @author MYZ
     *    Junit测试
     *    1.测试方法上必须使用@Test进行修饰
     *    2.测试方法必须使用public void 进行修饰,不能带任何的参数
     *    3.新建一个源代码目录来存放我们的测试代码
     *    4.测试类的包应该和被测试类保持一致
     *    5.测试单元中的每个方法必须可以独立测试    ,测试方法之间不能有任何的依赖
     *    6.测试类类名最好以Test作为结尾(不是必须)
     *    8.测试方法方法名最好以test开头(不是必须)
     */
    
    public class CalculateTest {
        
        @Test
        public void testAdd() {
            //assertEquals(期望结果, 需进行测试的方法);
            assertEquals(6, new Calculate().add(3,3));
        }
        
        @Test
        public void testSubtract() {
            assertEquals(3, new Calculate().subtract(5,2));
        }
        
        @Test
        public void testMultiply() {
            assertEquals(4, new Calculate().multiply(2, 2));
        }
        
        @Test
        public void testDivide() {
            assertEquals(3, new Calculate().divide(6, 2));
        }
    }

    5.点击CalculateTest.java,右键Run As-->Junit Test

    6.在Junit试视图中看见测试结果4/4成功!

    7.测试失败的两种情况:

      1>Failure一般由测试用例的断言方法(assertEquals方法)判断得,也就是我们程序的输出结果于我们给的期望值不一样

      2>Erro一般是由代码异常引起的,可能产生于代码本身的错误,也可能由于是被测试代码中一个隐藏的BUG

  • 相关阅读:
    阿里云主机和RDS使用心得
    iOS_2_button控制物体形变
    js 继承概述
    Android 代码混淆
    “...”是字段,但此处被当作类型来使用
    Mali GPU OpenGL ES 应用性能优化--測试+定位+优化流程
    uva 213
    XML基础以及用DOM4j读取数据
    【Hibernate】Hibernate3.x独立执行时的Failed to load class "org.slf4j.impl.StaticLoggerBinder"错误
    《Pro Android Graphics》读书笔记之第六节
  • 原文地址:https://www.cnblogs.com/myz666/p/8463565.html
Copyright © 2011-2022 走看看