Hibernate初学者---Junit 测试String类型返回值

public class Item{

public String TypeName(){
    returen "A";
}
...


}

假设我们要测试返回值是否为“A”。

  • 首先NEW一个Item对象出来:Item item= new Item();
  • NEW一个通用类型变量,临时装载item对象. Class<?> clazz= item.getClass(); 其实就是复制item副本的过程,
  • NEW一个反射对象Field,参数指向clazz声明的方法名“TypeName”,表示这个Field只存储TypeName方法相关的参数!:Field field = clazz.getDeclaredField("TypeName");

  • 反射机制访问权限相关设定,必须这么写 field.setAccessible(true);

  • 由于我的Field限制为TypeName属性范围,所以,Field.get(object)方法中,传入的 object 如果具有TypeName方法,它的值将被保存。我们传入item, 得到的将是item的TypeName方法,这个方法是有返回值的,所以我们用String参数接收这个返回值 。String string = (String)field.get(item);

  • 既然 我们已经拿到了TypeName的返回值 ,与我们希望得到的结果做个比较,就能知道它们是否equlse了。

assertEquals("A",string);
  • 就这样就可以通过一个对象的影子映射到了这个对象的所有信息了。这就是反射机制。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值