zoukankan      html  css  js  c++  java
  • testNG断言

    https://junit.org/junit4/javadoc/latest/org/junit/Assert.html#assertThat

    断言:Hamcrest - Matchers

    对象:
    equalTo - 测试对象相等使用Object.equals方法
    hasToString - 测试Object.toString方法
    instanceOf,isCompatibleType -测试类型 不会,没有验证
    notNullValue,nullValue -测试Null
    sameInstance - 测试对象示例
    集合:
    hasEntry,hasKey,hasValue -测试一个map包含一个实体,键或者值
    hasItem,hasItems -测试一个集合包含一个元素
    hasItemInArray - 测试一个数组包含一个元素
    数字:
    closeTo - 测试浮点值接近给定的值
    文本:
    equalToIgnoringCase - 测试字符串相等忽略大小写
    equalToIgnoringWhiteSpace - 测试字符串忽略空白
    containsString,endsWith,startsWith - 测试字符串匹配

    #java
    package com.ali;
    
    import com.sun.prism.PhongMaterial;
    import org.hamcrest.CoreMatchers;
    import org.hamcrest.Matchers;
    import org.testng.annotations.Test;
    
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    import static org.hamcrest.Matchers.*;
    import static org.junit.Assert.assertNotEquals;
    import static org.junit.Assert.assertThat;
    
    public class LessonAssert {
        @Test
        public void testInt(){
            //数字
            Integer i = 1 + 1;
            assertThat(i, is(2));
            assertThat(i, equalTo(2));
            assertThat(i, not(3));
            assertThat(i, allOf(greaterThan(1),lessThan(5)));
            assertThat(i, anyOf(greaterThan(1),lessThan(0)));
            assertThat(i, anything("始终为true"));
            assertThat(i, notNullValue());
            assertThat(i, sameInstance(2));
        }
        @Test
        public void testDouble(){
            //浮点数
            Double a = 12.3;
            assertThat(a, closeTo(12,0.5));
            assertThat(a, greaterThan(11.0));
            assertThat(a, lessThan(12.5));
            assertThat(a, greaterThanOrEqualTo(12.3));
            assertThat(a, lessThanOrEqualTo(12.5));
    
        }
        @Test
        public void testString(){
            //字符串
            String a = "HelloWorld";
            assertThat(a, equalTo("HelloWorld"));
            assertThat(a, startsWith("He"));
            assertThat(a, endsWith("ld"));
            assertThat(a, containsString("oW"));
            assertThat(a, equalToIgnoringCase("helloworld"));
            assertThat(a, equalToIgnoringWhiteSpace("  HelloWorld "));
        }
        @Test
        public void testList(){
            //集合
            List<String> list = new ArrayList<String>();
            list.add("hello");
            list.add("world");
            assertThat(list,hasItem("hello"));
            assertThat(list,hasItems("hello","world"));
        }
        @Test
        public void testmap(){
            //map
             Map<String,String> a = new HashMap<String,String>();
            a.put("阿里","马云");
            a.put("腾讯","马化腾");
            assertThat(a, hasKey("阿里"));
            assertThat(a, hasValue("马云"));
            assertThat(a, hasEntry("阿里","马云"));
            assertThat(a.get("阿里"), equalTo(""马云""));
        }
        @Test
        public void testList2(){
            //数组
            String[] a = {"a","b","c","d"};
            assertThat(a,hasItemInArray("a"));
    
        }
    }
    
    
  • 相关阅读:
    Xcode7.x中安装Alcatraz
    iOS开发:一个无限滚动自动播放图片的Demo(Swift语言编码)
    ios开发:一个音乐播放器的设计与实现
    iOS开发:深入理解GCD 第二篇(dispatch_group、dispatch_barrier、基于线程安全的多读单写)
    iOS开发:XCTest单元测试(附上一个单例的测试代码)
    设计模式之构造者模式
    控制流程
    变量与常量定义
    go语言内置基础类型
    解决Win10 Virtualbox5.2.18桥接不能联网小记
  • 原文地址:https://www.cnblogs.com/csj2018/p/9452518.html
Copyright © 2011-2022 走看看