spring 集成 junit
spring 集成 junit,方便測試,特別是使用TTD方法開發。
1、spring是純java方式配置,集成junit如下:
import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import com.redis.demo.init.AppConfig; /** * 共用 dao * * @author sean * */ @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(classes = { AppConfig.class }) public class BaseDaoTest { @Test public void _() { } }
2、spring是xml文件的方式配置,集成junit如下:
import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; /** * 共用 dao * * @author sean * */ @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration({"classpath:applicationContext.xml"}) public class BaseDaoTest { @Test public void _() { } }
這樣其他的測試類就可以繼承這個BaseDaoTest,這樣我們的測試就相當方便。舉例如下
import java.util.List; import org.junit.Assert; import org.junit.Before; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import com.redis.demo.core.entity.Member; public class MemberDaoTest extends BaseDaoTest { @Autowired private IMemberDao memberDao; private Member member; @Before public void setUp() { member = new Member(); member.setName("魏升水"); member.setCardNum("25215411200"); } /** * 測試保存會員 */ @Test public void testSaveMember() { saveMember(member); Assert.assertNotNull(member.getId()); memberDao.saveMember(member); Assert.assertNotNull(member.getId()); } /** * 測試通過id查詢會員 */ @Test public void testGetMemberById() { // 添加數據 saveMember(member); // case 1: id 存在,能查詢到數據 String id = member.getId(); Member member2 = memberDao.getMemberById(id); Assert.assertEquals(member.getId(), member2.getId()); // case 2: id 不存在,不能查詢到數據 id = id + "1"; Member member3 = memberDao.getMemberById(id); Assert.assertNull(member3); } /** * 查詢所有會員 */ @Test public void testGetAllMembers() { // 前置檢查:現在還沒有添加數據,一個會員也沒有 List<Member> members = memberDao.getAllMembers(); Assert.assertEquals(0, members.size()); // 添加數據: 保存兩個會員 // save member1 saveMember(member); // save member2 member = new Member(); member.setName("jredis"); member.setCardNum("20150324"); saveMember(member); members = memberDao.getAllMembers(); Assert.assertEquals(2, members.size()); } /** * 測試根據id刪除會員 */ @Test public void testDeleteMemberById() { // 數據準備 saveMember(member); // case 1: 指定的id存在,刪除成功 String id = member.getId(); boolean isDeleted = memberDao.deleteMemberById(id); Assert.assertTrue(isDeleted); // case 2: 指定的id不存在,刪除失敗 id = id + "1"; isDeleted = memberDao.deleteMemberById(id); Assert.assertFalse(isDeleted); } private void saveMember(Member member) { memberDao.saveMember(member); } }
本文由用戶 dwd4 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!