<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=TdddArticle</id>
	<title>TdddArticle - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=TdddArticle"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=TdddArticle&amp;action=history"/>
	<updated>2026-05-14T15:34:31Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=TdddArticle&amp;diff=39599&amp;oldid=prev</id>
		<title>imported&gt;Unknown at 05:28, 7 February 2021</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=TdddArticle&amp;diff=39599&amp;oldid=prev"/>
		<updated>2021-02-07T05:28:10Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;http://groups.yahoo.com/group/testdrivendevelopment/files/ 중 TDDD.pdf&lt;br /&gt;
----&lt;br /&gt;
TDD 로 Database TDD 진행하는 예제. 여기서는 툴을 좀 많이 썼다. [[Hibernate]] 라는 O-R 매핑 툴과 deployment DB는 오라클이지만 로컬 테스트를 위해 HypersonicSql 이라는 녀석을 썼다고 한다. 그리고 test data 를 위해 DBUnit 쓰고, DB Schema 제너레이팅을 위해 XDoclet 와 Ant 를 조합했다.&lt;br /&gt;
&lt;br /&gt;
여기 나온 방법에 대해 장점으로 나온것으로는 비슷한 어프로치로 500 여개 이상 테스트의 실행 시간 단축(Real DB 테스트는 setup/teardown 시 Clean up 하기 위해 드는 시간이 길어진다. 이 시간을 단축시키는 것도 하나의 과제), 그리고 테스트 지역화.&lt;br /&gt;
&lt;br /&gt;
제약사항으로는 Stored Procedure 나 Trigger 등 Vendor-Specfic 한 기술들을 적용하기 어렵다는 점 (이를 위해선 로컬 DB 또한 해당 Vendor의 DB를 설치해야 하므로).&lt;br /&gt;
&lt;br /&gt;
류군 이야기로는 Oracle 의 경우 설치하고 딱 실행하는데만 기본 메모리 200메가 잡아먹는다고 한다. -_-; 로컬 테스트를 위해 HypersonicSql를 쓸만도 하군.; (In-memory DB 식으로 지원가능. 인스톨 할것도 없이 그냥 콘솔에서 배치화일 하나 실행만 하면 됨. 근데, JDBC 를 완벽히 지원하진 않는 것도 같아서, 약간 애매. (ResultSet 의 first(), last(), isLast() 등의 메소드들이 실행이 안됨) &lt;br /&gt;
&lt;br /&gt;
 DeleteMe) - 오라클의 경우 인스턴스당 기본으로 먹는게 보통 200 메가 정도. 즉 기본 외에 자기가 만든걸 더 띄울경우 보통 400 메가 이상을 먹게 되는데 이건 뜰때 얘기고 가만히 냅두면 50 메가 이하로 메모리가 내려감. 물론 윈도우 하에서 얘기임. 나머진 확실하지 않음. 연결이 많아지면 메모리가 다시 올라갈것임. -박준용-&lt;br /&gt;
   그렇다 해도 오라클을 테스트를 위한 Local DB 로 돌리기엔 덩치가 크겠죠? --&amp;amp;#91;1002&amp;amp;#93;&lt;br /&gt;
     그래서 오라클이 크다는 말씀이 아니실까? 나도 찍어봐야겠네 --NeoCoin&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
여기에서의 TDD 진행 방법보다는 Reference 와 사용 도구들에 더 눈길이 간다. XDoclet 와 ant, O-R 매핑 도구를 저런 식으로도 쓸 수 있구나 하는 것이 신기. 그리고 HSQLDB 라는 가벼운 (160kb 정도라고 한다) DB 로 로컬테스트 DB 를 구축한다는 점도. &lt;br /&gt;
초반 자동화를 위해 준비할 것들에만 좀 신경을 쓰고, 익숙해진다면 잘 할 수 있지 않을까 생각.&lt;br /&gt;
&lt;br /&gt;
Xper:XperSeminar 를 보니 일단 셋팅이 되고 익숙해지면 TDD 리듬이 덜 흐트러지는 방법 같았다. (재우씨랑 응주씨가 원래 잘하시고 게다가 연습도 많이 하셔서이겠지만;) password 추가되고 테스트 돌리는 리듬이 좋아보인다. 단, 테스트 돌아가는 속도가 역시 Real DB 이면서 [[Hibernate]] 까지 같이 돌아가서 약간 느려보이는데, 이건 해보고 결정 좀 해야겠군.&lt;br /&gt;
&lt;br /&gt;
reference 쪽은 최근의 테스트와 DB 관련 최신기술 &amp;amp; 문서들은 다 나온 듯 하다. 익숙해지면 꽤 유용할 듯 하다. (hibernate 는 꽤 많이 쓰이는 듯 하다. Intellij 이건 Eclipse 건 플러그인들이 다 있는걸 보면. XDoclet 에서도 지원)&lt;br /&gt;
* HypersonicSql&lt;br /&gt;
* [[Hibernate]]&lt;br /&gt;
* http://www.dallaway.com/acad/dbunit.html&lt;br /&gt;
* http://dbunit.sourceforge.net&lt;br /&gt;
* http://xdoclet.sourceforge.net&lt;br /&gt;
그리고 http://www.agiledata.org 에 있는 에세이들 관련.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
간만에 여유가 생겨서 한번 따라해보게 되었는데, [[Hibernate]] 가 생각보다 복잡한 녀석이라는 것을 알게 되었다. (내가 O-R Mapping Tool 에 대한 경험이 없기 때문에 더더욱) 한번에 습득하기에 쉬운 녀석은 아니였군.; &lt;br /&gt;
&lt;br /&gt;
--&amp;amp;#91;1002&amp;amp;#93;&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>imported&gt;Unknown</name></author>
	</entry>
</feed>