zoukankan      html  css  js  c++  java
  • Junit4的简单使用

    junit4的简单使用

    测试套件的使用

    测试类1

    package com.westward;
    
    import static org.junit.Assert.*;
    
    import org.junit.Test;
    
    public class TaskTest1 {
    
        @Test
        public void test() {
            System.out.println("tasktest1");
        }
    
    }

    测试类2

    package com.westward;
    
    import static org.junit.Assert.*;
    
    import org.junit.Test;
    
    public class TaskTest2 {
    
        @Test
        public void test() {
            System.out.println("tasktest2");
        }
    
    }

    测试类3

    package com.westward;
    
    import static org.junit.Assert.*;
    
    import org.junit.Test;
    
    public class TaskTest3 {
    
        @Test
        public void test() {
            System.out.println("tasktest3");
        }
    
    }

    测试套件:
    注意:测试套件类里,不能有任何代码

    package com.westward;
    
    import static org.junit.Assert.*;
    
    import org.junit.Test;
    import org.junit.runner.RunWith;
    import org.junit.runners.Suite;
    import org.junit.runners.Suite.SuiteClasses;
    
    @RunWith(Suite.class)
    @SuiteClasses({TaskTest1.class,TaskTest2.class,TaskTest3.class})
    public class SuiteTest {
        
    }

    参数化测试

    测试类

    package com.westward;
    
    public class Calculator {
        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;
        }
    }

    参数化测试类;

    package com.westward;
    
    import static org.junit.Assert.*;
    
    import java.util.Arrays;
    import java.util.Collection;
    
    import org.junit.Test;
    import org.junit.runner.RunWith;
    import org.junit.runners.Parameterized;
    import org.junit.runners.Parameterized.Parameters;
    
    @RunWith(Parameterized.class)
    public class ParameterTest {
        int expected= 0;
        int input1= 0;
        int input2= 0;
        /**
         * 必须是static方法
         * */
        @Parameters
        public static Collection<Object[]> t(){
            return Arrays.asList(new Object[][]{
                {3,1,2},{6,2,4},{7,3,4}
            });
        }
        public ParameterTest(int expected,int input1,int input2) {
            this.expected= expected;
            this.input1= input1;
            this.input2= input2;
        }
        @Test
        public void testAdd(){
            assertEquals(expected, new Calculator().add(input1, input2));
        }
    }
  • 相关阅读:
    开源牛人 zcbenz
    分享一个快速的Json(反)序列化开源项目 Jil
    影响当今世界发展的重要技术难题
    余额表的处理方法
    使用TypeScript开发程序
    docker 和 nginx 配合的一个坑
    Excel 的一些使用记录
    mysql 用户授权相关
    容器数量增加导致 fs.inotify.max_user_instances 超过限制
    在 EF Core 中如何输出 linq 转换后的 sql 语句
  • 原文地址:https://www.cnblogs.com/westward/p/5441025.html
Copyright © 2011-2022 走看看