Chinaunix首页 | 论坛 | 博客
  • 博客访问: 23598
  • 博文数量: 13
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 136
  • 用 户 组: 普通用户
  • 注册时间: 2015-01-22 14:23
文章分类

全部博文(13)

文章存档

2015年(13)

我的朋友

分类: Java

2015-11-26 18:18:37

一般来说,JUnit4的时候,直接new这个对象就行了,没必要mock。但是有时遇到了很难new的对象,就不能new了,例如HttpServletRequest


  1. private HttpServletRequest mock(String uri, String client_id, String secret) {
  2.         HttpServletRequest request = EasyMock.createMock(HttpServletRequest.class);
  3.         EasyMock.expect(request.getRequestURI()).andReturn(uri).anyTimes();

  4.         DateFormat df = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.ENGLISH);
  5.         long now = System.currentTimeMillis();
  6.         String stringToSign = "POST" + " " + uri + "\n" + df.format(now);
  7.         String sign = getSignature(stringToSign, secret);
  8.         String auth = "MWS " + client_id + ":" + sign;
  9.         EasyMock.expect(request.getHeader("Date")).andReturn(df.format(now)).anyTimes();
  10.         EasyMock.expect(request.getHeader("Authorization")).andReturn(auth).anyTimes();
  11.         EasyMock.expect(request.getMethod()).andReturn("POST");
  12.         EasyMock.replay(request);
  13.         return request;

  14.     }
具体细节也没细究,可以网上查,不过一般上述Mock就够用了。
需要的依赖


  1. <dependency>
  2.             <groupId>easymock</groupId>
  3.             <artifactId>easymock</artifactId>
  4.             <version>2.0</version>
  5.             <scope>test</scope>
  6.         </dependency>



阅读(497) | 评论(0) | 转发(0) |
0

上一篇:简单推荐系统

下一篇:没有了

给主人留下些什么吧!~~