junit中的assert方法总结

junit中的assert方法全部放在Assert类中,总结一下junit类中assert方法的分类。
1.assertTrue/False([String message,]boolean condition);
    判断一个条件是true还是false。感觉这个最好用了,不用记下来那么多的方法名。

2.fail([String message,]);
    失败,可以有消息,也可以没有消息。

3.assertEquals([String message,]Object expected,Object actual);
    判断是否相等,可以指定输出错误信息。
    第一个参数是期望值,第二个参数是实际的值。
    这个方法对各个变量有多种实现。在JDK1.5中基本一样。
    但是需要主意的是float和double最后面多一个delta的值。

4.assertNotEquals([String message,]Object expected,Object actual);
    判断是否不相等。
    第一个参数是期望值,第二个参数是实际的值。

5.assertArrayEquals([java.lang.String message,] java.lang.Object[] expecteds, java.lang.Object[] actuals) ;

6.assertNotNull/Null([String message,]Object obj);
    判读一个对象是否非空(非空)。

7.assertSame/NotSame([String message,]Object expected,Object actual);
    判断两个对象是否指向同一个对象。看内存地址。

8.failNotSame/failNotEquals(String message, Object expected, Object actual)
    当不指向同一个内存地址或者不相等的时候,输出错误信息。
    注意信息是必须的,而且这个输出是格式化过的。

9.assertThat(java.lang.String reason, java.lang.Object actual, org.hamcrest.Matcher matcher);

其中,reason为断言失败时的输出信息,actual为断言的值或对象,matcher为断言的匹配器,里面的逻辑决定了给定的actual对象满不满足断言。

(如果需要是用assertThat需要在项目中引入junit4的jar包,以及hamcrest-core.jar和hamcrest-library.jar)

时间: 2024-10-12 00:06:53

junit中的assert方法总结的相关文章

junit4 assert类中的assert方法总结

junit中的assert方法全部放在Assert类中,总结一下junit类中assert方法的分类. 1.assertTrue/False([String message,]boolean condition);判断一个条件是true还是false.感觉这个最好用了,不用记下来那么多的方法名.2.fail([String message,]);失败,可以有消息,也可以没有消息.3.assertEquals([String message,]Object expected,Object actu

Junit中对私有方法测试

在Junit中对私有方法进行测试有两种方法: 一.改变私有方法的访问权限(此方法并不推荐) 二.使用反射机制(推荐) 例如:Calculator类中有一个  private int add2(int a,int b) { return a+b; } 那么在我们的测试类的测试方法中: @Test public void add2() { Calculator c=new Calculator(); Class<Calculator> cal=Calculator.class; try { Met

解释JUnit中@BeforeClass和@AfterClass标注的方法必须是static的,而在TestNg不必

在JUnit中@BeforeClass和@AfterClass标注的方法必须是static的:但是在TestNg中却没有这样的限制,这是为什么呢. 其实和他们两的运行机制有关. 在junit中: 每运行一个@Test方法,就会为该测试类新建一个新的实例.(所以@BeforeClass和@AfterClass必须是static的,因为运行他们的时候,测试类还没有实例化呢.) 有没有发现这有助于提高测试方法之间的独立性,因为每个@Test执行的时候,都新建了一个实例,这样的话,可以避免测试方法之间重

转载--编写高质量代码:改善Java程序的151个建议(第1章:JAVA开发中通用的方法和准则___建议16~20)

阅读目录 建议16:易变业务使用脚本语言编写 建议17:慎用动态编译 建议18:避免instanceof非预期结果 建议19:断言绝对不是鸡肋 建议20:不要只替换一个类 回到顶部 建议16:易变业务使用脚本语言编写 Java世界一直在遭受着异种语言的入侵,比如PHP,Ruby,Groovy.Javascript等,这些入侵者都有一个共同特征:全是同一类语言-----脚本语言,它们都是在运行期解释执行的.为什么Java这种强编译型语言会需要这些脚本语言呢?那是因为脚本语言的三大特征,如下所示:

junit4的几个assert方法

在静态类junit.framework.Assert或者静态类org.junit.Assert中存在以下几个方法 1.assertEquals()方法,用来查看对象中存的值是否是期待的值,与字符串比较中使用的equals()方法类似: 2.assertFalse()和assertTrue()方法,用来查看变量是是否为false或true,如果assertFalse()查看的变量的值是false则测试成功,如果是true则失败,assertTrue()与之相反. 3.assertSame()和as

浅谈Java中的hashCode方法

哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率.在Java的Object类中有一个方法: public native int hashCode(); 根据这个方法的声明可知,该方法返回一个int类型的数值,并且是本地方法,因此在Object类中并没有给出具体的实现. 为何Object类需要这样一个方法?它有什么作用呢?今天我们就来具体探讨一下hashCode方法. 一.hashCode方法的作用 对于包含容器类型的程序设计语言来说,基本上都会涉及到has

Spring中的AOP(五)——在Advice方法中获取目标方法的参数

摘要: 本文介绍使用Spring AOP编程中,在增强处理方法中获取目标方法的参数,定义切点表达式时使用args来快速获取目标方法的参数. 获取目标方法的信息 访问目标方法最简单的做法是定义增强处理方法时,将第一个参数定义为JoinPoint类型,当该增强处理方法被调用时,该JoinPoint参数就代表了织入增强处理的连接点.JoinPoint里包含了如下几个常用的方法: Object[] getArgs:返回目标方法的参数 Signature getSignature:返回目标方法的签名 Ob

在VS2010单元测试中,Assert断言主要有那些功能?如何去编写代码测试?

单元测试的基本方法是调用被测代码的函数,输入函数的参数值,获取返回结果,然后与预期测试结果进行比较,如果相等则认为测试通过,否则认为测试不通过. 1.Assert类的使用 Assert.Inconclusive() 表示一个未验证的测试: Assert.AreEqual() 测试指定的值是否相等,如果相等,则测试通过: AreSame() 用于验证指定的两个对象变量是指向相同的对象,否则认为是错误 AreNotSame() 用于验证指定的两个对象变量是指向不同的对象,否则认为是错误 Assert

VC中TRACE ASSERT VERIFY之用法

一.TRACE宏 当选择了Debug目标,并且afxTraceEnabled变量被置为TRUE时,TRACE宏也就随之被激活了.但在程序的Release版本中,它们是被完全禁止的.下面是一个典型的TRACE语句: … int nCount =9; CString strDesc("total"); TRACE("Count =%d,Description =%s\n",nCount,strDesc); … 可以看到,TRACE语句的工作方式有点像C语言中的print