zoukankan      html  css  js  c++  java
  • eclipse 直接右键工程new 看不到JUnit的情况以及JUnit的作用、使用举例和JUnit的注意事项

    eclipse 直接右键工程new 看不到JUnit的情况以及JUnit的作用、使用举例和JUnit的注意事项

    1,eclipse 直接右键工程new 看不到JUnit的情况

    解决:右键工程-》new-》Other-》Java-》JUnit

     

     小细节

    测试案例(包含运行结果):

     2,JUnit的作用:在单元测试活动中,测试方法是否可以正常执行

    ①可能:项目组都会有要求必须掌握的:因为在团队开发中,提交未经单元测试的代码,可能会引起灾难.

    ②交报告):请问下,JUnit单元测试有什么用??
        你自己测试只是意思一下而已,不够正规用JUnit测试会有测试案例和测试结果,方便给领导汇报工作作为依据而且听说有的公司先写测试案例,后实现功能,这种情况下就必须要用了。

    ③:在功能拓展,需求更改频繁,方法复用高的情况下也可以适用,成千上万个接口中使用JUnit。
    其中:成千上万个方法使用JUnit 测试,利用的是 JUnit内部的断言机制,(调用 JUnit 内部的assertEqual 方法)检测我们预期的结果和实际的结果是否一致,从而得知方法是否正确。

    assertEquals是一个断言的规则,里面有两个参数,第一个参数表明我们预期的值,第二个参数表示实际运行的值。(assertEquals:预期与实际是否匹配)

    使用JUnit时,接口预期与实际不匹配时,执行时结果是×,匹配时结果是√

    3,使用JUnit测试方法时注意事项:

    (1)      测试的方法上必须要有注解@Test

    (2)      测试方法不能带参数,且只能使用public void 修饰

    (3)      @Test的两个参数用不上expected 和 timeout 的原因:版本原因:这个两个参数是JUnit4的哈

    4,代码举例:

    ❀ AlgorithmDesign 类:
    package BiscuitsDemo;
    
    public class AlgorithmDesign {
        public double add(double a,double b) {
            return a + b;
        }
        public double reduce(double a,double b) {
            return a - b;
        }
        public double multiplication(double a, double b) {
            return a * b;
        }
        public double division(double a, double b) { 
            return a / b;
        }
    }
    ❀ TestUnit 类
    package BiscuitsDemo;
    
    import static org.junit.jupiter.api.Assertions.*;
    
    import org.junit.Rule;
    import org.junit.jupiter.api.AfterEach;
    import org.junit.jupiter.api.BeforeEach;
    import org.junit.jupiter.api.Test;
    import org.junit.rules.ExpectedException;
    
    class TestUnit {
    
    
        void setUp() throws Exception {
            System.out.println("setUp");
        }
    
    
        void tearDown() throws Exception {
            System.out.println("after");
        }
    
        @Test
        public void testAdd() {
            assertEquals(10, new AlgorithmDesign().add(5, 5));
        }
        @Test
        public void testReduce() {
            assertEquals(3, new AlgorithmDesign().reduce(7, 4));
        }
        @Test
        public void testMultiply() {
            assertEquals(100, new AlgorithmDesign().multiplication(10, 10));
        }
        @Test
        public void testDevision() {
            assertEquals(0, new AlgorithmDesign().division(8, 0));
        }
    
    }

    转自:

    https://zhuanlan.zhihu.com/p/86624354 《Java程序员必须要知道的单元测试框架Junit详解》

     
  • 相关阅读:
    mac中导出CSV格式在excel中乱码
    Android Gradle与Gradle插件的对应关系
    【算法】二叉树的前序、中序、后序、层序遍历和还原。
    关于Java虚拟机
    从Java synchronized和volatile说起
    【程小白】Java基本特性
    Android一键锁屏APP
    Fragment的生命周期
    学习大数据必须了解的大数据开发课程大纲
    学习大数据这三个关键技术是一定要掌握!
  • 原文地址:https://www.cnblogs.com/shan333/p/14771757.html
Copyright © 2011-2022 走看看