﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-少年阿宾-随笔分类-JMOCK</title><link>http://www.blogjava.net/stevenjohn/category/53242.html</link><description>那些青春的岁月</description><language>zh-cn</language><lastBuildDate>Mon, 06 May 2013 11:59:56 GMT</lastBuildDate><pubDate>Mon, 06 May 2013 11:59:56 GMT</pubDate><ttl>60</ttl><item><title>JMOCK2.6 测试类和接口</title><link>http://www.blogjava.net/stevenjohn/archive/2013/05/06/398851.html</link><dc:creator>abin</dc:creator><author>abin</author><pubDate>Mon, 06 May 2013 04:42:00 GMT</pubDate><guid>http://www.blogjava.net/stevenjohn/archive/2013/05/06/398851.html</guid><wfw:comment>http://www.blogjava.net/stevenjohn/comments/398851.html</wfw:comment><comments>http://www.blogjava.net/stevenjohn/archive/2013/05/06/398851.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/stevenjohn/comments/commentRss/398851.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/stevenjohn/services/trackbacks/398851.html</trackback:ping><description><![CDATA[第一部分：JMOCK测试接口<br />
<p>package com.abin.lee.mock.jmock;</p>
<p>/**<br />&nbsp;* Created with IntelliJ IDEA.<br />&nbsp;* User: abin<br />&nbsp;* Date: 13-5-6<br />&nbsp;* Time: 下午12:23<br />&nbsp;* To change this template use File | Settings | File Templates.<br />&nbsp;*/<br />public interface UserService {<br />&nbsp;&nbsp;&nbsp; public String getMessage(String message);<br />}<br /></p><br /><br /><br /><br />
<p>package com.abin.lee.mock.jmock;</p>
<p>/**<br />&nbsp;* Created with IntelliJ IDEA.<br />&nbsp;* User: abin<br />&nbsp;* Date: 13-5-6<br />&nbsp;* Time: 下午12:24<br />&nbsp;* To change this template use File | Settings | File Templates.<br />&nbsp;*/<br />public class UserServiceImpl implements UserService {<br />&nbsp;&nbsp;&nbsp; @Override<br />&nbsp;&nbsp;&nbsp; public String getMessage(String message) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String result="";<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; result="hello "+message;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return result;<br />&nbsp;&nbsp;&nbsp; }<br />}<br /></p><br /><br /><br /><br />
<p>package com.abin.lee.mock.jmock;</p>
<p>import junit.framework.TestCase;<br />import org.jmock.Expectations;<br />import org.jmock.Mockery;<br />import org.junit.BeforeClass;<br />import org.junit.Test;</p>
<p>/**<br />&nbsp;* Created with IntelliJ IDEA.<br />&nbsp;* User: abin<br />&nbsp;* Date: 13-5-6<br />&nbsp;* Time: 下午12:29<br />&nbsp;* To change this template use File | Settings | File Templates.<br />&nbsp;*/<br />public class UserManageTest {<br />&nbsp;&nbsp;&nbsp; @Test<br />&nbsp;&nbsp;&nbsp; public void testUserManage(){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Mockery mockery= new Mockery();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final UserService userService=mockery.mock(UserService.class);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final String message="abin";<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final String expectValue="hello abin";<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mockery.checking(new Expectations(){{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; oneOf(userService).getMessage(message);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; will(returnValue(expectValue));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }});<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String actual=userService.getMessage(message);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("actual="+actual);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TestCase.assertEquals(expectValue,actual);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mockery.assertIsSatisfied();<br />&nbsp;&nbsp;&nbsp; }<br />}<br /><br /><br /><br /><br /><br /><br /><br /><br />第二部分：JMOCK测试普通类<br /></p>
<p>package com.abin.lee.mock.jmock;</p>
<p>/**<br />&nbsp;* Created with IntelliJ IDEA.<br />&nbsp;* User: abin<br />&nbsp;* Date: 13-5-6<br />&nbsp;* Time: 下午12:43<br />&nbsp;* To change this template use File | Settings | File Templates.<br />&nbsp;*/<br />public class UserManage {<br />&nbsp;&nbsp;&nbsp; public String getMessage(String message){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String result="hello "+message;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("result="+result);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return result;<br />&nbsp;&nbsp;&nbsp; }<br />}<br /></p>
<p>&nbsp;</p><br /><br /><br /><br /><br />
<p>package com.abin.lee.mock.jmock;</p>
<p>import junit.framework.TestCase;<br />import org.jmock.Expectations;<br />import org.jmock.Mockery;<br />import org.jmock.integration.junit4.JUnit4Mockery;<br />import org.jmock.lib.legacy.ClassImposteriser;<br />import org.junit.Test;</p>
<p>/**<br />&nbsp;* Created with IntelliJ IDEA.<br />&nbsp;* User: abin<br />&nbsp;* Date: 13-5-6<br />&nbsp;* Time: 下午12:47<br />&nbsp;* To change this template use File | Settings | File Templates.<br />&nbsp;*/<br />public class UserManageTest {<br />&nbsp;&nbsp;&nbsp; @Test<br />&nbsp;&nbsp;&nbsp; public void testUserManage(){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Mockery mockery=new Mockery();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mockery.setImposteriser(ClassImposteriser.INSTANCE);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final UserManage userManage=mockery.mock(UserManage.class);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final String message="abin";<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final String expectValue="hello abin";<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mockery.checking(new Expectations(){{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; oneOf(userManage).getMessage(message);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; will(returnValue(expectValue));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }});<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String expect=userManage.getMessage(message);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("expect="+expect);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TestCase.assertEquals(expectValue,expect);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mockery.assertIsSatisfied();<br />&nbsp;&nbsp;&nbsp; }<br />}<br /></p><br /><br /><br /><br /><br /><br /><img src ="http://www.blogjava.net/stevenjohn/aggbug/398851.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/stevenjohn/" target="_blank">abin</a> 2013-05-06 12:42 <a href="http://www.blogjava.net/stevenjohn/archive/2013/05/06/398851.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Jmock 初步学习用例（一）</title><link>http://www.blogjava.net/stevenjohn/archive/2013/04/23/398262.html</link><dc:creator>abin</dc:creator><author>abin</author><pubDate>Tue, 23 Apr 2013 03:29:00 GMT</pubDate><guid>http://www.blogjava.net/stevenjohn/archive/2013/04/23/398262.html</guid><wfw:comment>http://www.blogjava.net/stevenjohn/comments/398262.html</wfw:comment><comments>http://www.blogjava.net/stevenjohn/archive/2013/04/23/398262.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/stevenjohn/comments/commentRss/398262.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/stevenjohn/services/trackbacks/398262.html</trackback:ping><description><![CDATA[<div>//UserDao.java<br />
<p>package com.abin.lee.jmock;</p>
<p>/**<br />&nbsp;* Created with IntelliJ IDEA.<br />&nbsp;* User: abin<br />&nbsp;* Date: 13-4-23<br />&nbsp;* Time: 上午11:07<br />&nbsp;* To change this template use File | Settings | File Templates.<br />&nbsp;*/<br />public interface UserDao {<br />&nbsp;&nbsp;&nbsp; public String getMessage(String message);<br />}<br /></p><br /><br /><br /><br />//UserService.java<br />
<p>package com.abin.lee.jmock;</p>
<p>/**<br />&nbsp;* Created with IntelliJ IDEA.<br />&nbsp;* User: abin<br />&nbsp;* Date: 13-4-23<br />&nbsp;* Time: 上午11:06<br />&nbsp;* To change this template use File | Settings | File Templates.<br />&nbsp;*/<br />public class UserService {<br />&nbsp;&nbsp; private UserDao userDao;</p>
<p>&nbsp;&nbsp; public String findMessage(String message){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return this.userDao.getMessage(message);<br />&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp; public void setUserDao(UserDao userDao){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this.userDao=userDao;<br />&nbsp;&nbsp;&nbsp; }<br />}<br /></p><br /><br /><br /><br />//UserManageTest.java<br />
<p>package com.abin.lee.jmock;</p>
<p>import junit.framework.TestCase;<br />import org.jmock.Expectations;<br />import org.jmock.Mockery;<br />import org.junit.Test;</p>
<p>/**<br />&nbsp;* Created with IntelliJ IDEA.<br />&nbsp;* User: abin<br />&nbsp;* Date: 13-4-23<br />&nbsp;* Time: 上午11:08<br />&nbsp;* To change this template use File | Settings | File Templates.<br />&nbsp;*/<br />public class UserManageTest {<br />&nbsp;&nbsp;&nbsp; @Test<br />&nbsp;&nbsp;&nbsp; public void testUserManage(){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // 建立一个test上下文对象。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Mockery mockery=new Mockery();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // 生成一个mock对象<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final UserDao userDao=mockery.mock(UserDao.class);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // 设置期望。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mockery.checking(new Expectations(){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // 当参数为"abin"的时候，userDao对象的getMessage方法被调用一次，并且返回西安。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; oneOf(userDao).getMessage("abin");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; will(returnValue("abin"));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; });<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; UserService userService=new UserService();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; userService.setUserDao(userDao);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String message=userService.findMessage("abin");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("message="+message);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TestCase.assertEquals("abin",message);</p>
<p>&nbsp;&nbsp;&nbsp; }<br />}<br /></p></div><img src ="http://www.blogjava.net/stevenjohn/aggbug/398262.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/stevenjohn/" target="_blank">abin</a> 2013-04-23 11:29 <a href="http://www.blogjava.net/stevenjohn/archive/2013/04/23/398262.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Jmock   Example</title><link>http://www.blogjava.net/stevenjohn/archive/2013/01/18/394434.html</link><dc:creator>abin</dc:creator><author>abin</author><pubDate>Fri, 18 Jan 2013 15:47:00 GMT</pubDate><guid>http://www.blogjava.net/stevenjohn/archive/2013/01/18/394434.html</guid><wfw:comment>http://www.blogjava.net/stevenjohn/comments/394434.html</wfw:comment><comments>http://www.blogjava.net/stevenjohn/archive/2013/01/18/394434.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/stevenjohn/comments/commentRss/394434.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/stevenjohn/services/trackbacks/394434.html</trackback:ping><description><![CDATA[<a href="http://www.blogjava.net/alex0927/archive/2008/06/20/209474.html">http://www.blogjava.net/alex0927/archive/2008/06/20/209474.html</a><br /><a href="http://blog.sina.com.cn/s/blog_4fb27fd80100ohyr.html">http://blog.sina.com.cn/s/blog_4fb27fd80100ohyr.html</a> <img src ="http://www.blogjava.net/stevenjohn/aggbug/394434.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/stevenjohn/" target="_blank">abin</a> 2013-01-18 23:47 <a href="http://www.blogjava.net/stevenjohn/archive/2013/01/18/394434.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>