码迷,mamicode.com
首页 > 其他好文 > 详细

testNG断言

时间:2018-08-10 01:16:09      阅读:314      评论:0      收藏:0      [点我收藏+]

标签:code   star   ado   asto   数字   相等   html   sso   htm   

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"));

    }
}

testNG断言

标签:code   star   ado   asto   数字   相等   html   sso   htm   

原文地址:https://www.cnblogs.com/csj2018/p/9452518.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!