使用Hamcrest增强JUnit的测试能力】的更多相关文章

package com.jadyer.service; import java.util.HashMap; import java.util.Map; import org.hamcrest.Matchers; import org.junit.Assert; import org.junit.Test; /** * 使用Hamcrest增强JUnit的测试能力 * @see Hamcrest框架提供了一些相对通俗并高效的方法来进行一些junit比较困难的测试 * @see 比如比较数值大小.测…
最近在做TWU关于TDD的作业,对JUnit中测试异常抛出的方法进行了一些学习和思考. 在进行单元测试的时候有的时候需要测试某一方法是否抛出了正确的异常.例如,我有一个方法,里面对一个List进行读取操作,可能会抛出IndexOutOfBoundsException,我希望在单元测试中通过测试保证该方法会正确的抛出正确类型的异常.总结起来这样的测试异常是否被正确抛出的方法有三种: 1. try…fail...catch… @Test public voidtestExceptionMessage…
JUnit参数化测试的五个步骤:(1)为准备使用参数化测试的测试类指定特殊的运行器 org.junit.runners.Parameterized.(2)为测试类声明几个变量,分别用于存放期望值和测试所用数据.(3)为测试类声明一个带有参数的公共构造函数,并在其中为第二个环节中声明的几个变量赋值.(4)为测试类声明一个使用注解 org.junit.runners.Parameterized.Parameters 修饰的,返回值为 java.util.Collection 的公共静态方法,并在此方…
一.使用注解配置spring 1.步骤 1.1 导包4+2+spring-aop 1.2 为主配置文件引入新的命名空间(约束) 1.3 开启使用注解代替配置文件 1.4 在类中使用注解完成配置 2.将对象注册到容器 //<bean name="user" class="cn.itcast.bean.User" /> //@Component("user") // @Service("user") // servic…
在前面的junit4初体验中我就说过,junit参数化测试是一只小怪兽,只逼编码痛点,现在我们这里来整理一下. 看过我前面的那篇初体验的就会发现一个问题,我们的测试代码大量的重复了.在这里先贴出原来的那2篇代码: 测试源码: package test.junit4test; import java.util.regex.Matcher; import java.util.regex.Pattern; public final class Linkin { /** * @创建时间: 2016年1月…
关于测试集,实质就是包含若干个测试类的集合,通过一个具体的实例,让我们来了解一下Junit的测试集 package org.yezi.junit; public class Calcaute { public int ride(int a, int b){ return a * b; } public int add(int a, int b){ return a + b; } public int reduce(int a, int b){ return a - b; } } package …
用到的注解: @Test:测试方法 @Before:初始化方法. @After:是否资源. 先执行Befere,然后执行Test,最后执行After. 第一步:新建一个Junit目录. 第二步:取名 该目录下新建一个类: 代码如下: import org.junit.After; import org.junit.Before; import org.junit.Test; //测试类 public class StudentsTest { @Before public void init()…
编写一个Hibernate例子 第四步:使用Junit进行测试 三个常用的注解标签 @Test:测试方法 @Before:初始化方法 @After:释放资源 执行顺序:Before注解标签下的方法  Test注解标签下的方法   After注解标签下的方法 具体的实现步骤:Source Folder表示源程序的文件夹,一般我们把测试用例放在test的源文件底下 新建一个测试类…
1 使用注解配置spring 1.1 步骤 导包4+2+spring-aop 1.为主配置文件引入新的命名空间(约束) 2.开启使用注解代理配置文件 3.在类中使用注解完成配置 1.2 将对象注册到容器 1.3 修改对象的作用范围 1.4 值类型注入 通过反射的Field赋值,破坏了封装性 通过set方法赋值,推荐使用. 1.5 引用类型注入 第一种 第二种 第三种★★ 1.6 初始化|销毁方法 2 spring与junit整合测试 1.导包4+2+aop+test 2.配置注解 3.测试 3 …
1.问题 在使用MockMVC+Mockito模拟Service层返回的时候,当我们在Controller层中参数方法调用有Pageable对象的时候,我们会发现,我们没办法生成一个Pageable的对象,会报一个Pageable是一个接口的错误.当我们把所有的参数从Pageable接口变成Pageable的实现类PageRequest的时候,所有的方法参数都换成PageRequest,又会出现一个新的错误,且不说PageRequest不能作为参数用于hibernate的分页查询,另一方面,它没…