길위에서…
지금 가도 되는 걸까? 이쪽으로 가면 되는 걸까? 인생에도… 언제 어느쪽으로 가야하는지 알려주는 표지가 있다면 얼마나 좋을까…
지금 가도 되는 걸까? 이쪽으로 가면 되는 걸까? 인생에도… 언제 어느쪽으로 가야하는지 알려주는 표지가 있다면 얼마나 좋을까…
다른 분이 공유해주셔서 알게 됐는데, infinitest라는 이클립스 플러그인이 있다. 코드가 바뀔 때마다 백그라운드에서 관련 테스트를 계속 돌려서 자동으로 결과를 알려준다. JunitMax라는 것도 있는데 이건 1년에 100달러 씩 유료로 사용하는데… infinitest는 GNU License로 변경되어 개인/기업 무료로 사용이 가능하다. 이클립스에서 help >… 더 보기 »[eclipse plugin] infinitest
1 2 3 |
/home/freeism/.hudson/jobs/UI-TEST/workspace/ui-test/src/test/java/com/freeism/DataTransferObject.java:[13,11] generics are not supported in -source 1.3 (use -source 5 or higher to enable generics) public Map<String, String> getParameters(); |
로컬에서는 되는데 (이클립스가 버전 정보를 명시해주니까…) 리모트(CI서버)에서는 오류가 발생한다. 위와 같이 오류가 발생하는 이유는 maven에서 사용하는 JDK 버전이 명시되어 있지 않기 때문이다. 당연히 아래와 같이 maven plugin 설정을 추가해주면 해결된다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.6</source> <target>1.6</target> <encoding>UTF-8</encoding> <optimize>true</optimize> </configuration> </plugin> </plugins> </pluginManagement> </build> |
출처 : http://forum.springsource.org/showthread.php?t=24913
최근 프로젝트에서 테스트가 난관에 봉착했다. 스크립트를 파싱하는 자바 로직에 대한 검증이 힘들다는 것인데, 이유는 다음과 같다. – 암호화된 인증 파라미터를 이용하므로 데이터 mocking이 불가능하다. – script 로직이 자바 로직에 영향을 많이 미치는 이상, 자바 로직의 단위 테스트로는 불완전하다. 그래서 몇… 더 보기 »HtmlUnit UI-Test for Java Program
자바에서 enum class에 대한 테스트를 모두 해도 100%가 나오지 않는다. (class의 LOC에 따라서 %가 유동적으로 변한다) 그 이유는 enumeration 에서 자동으로 생성하는 hidden byte code가 있기 때문이다. values(), valueOf() 두 가지 메소드를 실행시키면 비로소 coverage 100% 달성된다. 물론, 별 쓰잘데기… 더 보기 »enum에서 test coverage 100% 안 됨
hola, veo tu mensaje ahora. (안녕, 네 메시지 지금 봤어) Hasta manana, q tenga buen dia. (Have a nice day) q = Que 의 축약형 veo = vir(보다)의 1인칭형 ir(가다) 동사 voy(1인칭) vas(2인칭) va(3인칭) Yo voy al parque. (나는 공원에… 더 보기 »스페인어 공부
읽기 좋은 테스트 코드는 마치 책을 읽듯이 그냥 술술 읽으면 로직이 이해되는 그런 코드이다. (물론, 영어를 기준으로 하기 때문에 비영어권 개발자로서 그닥 빠르게 이해되진 않지만-ㅅ-)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
@RunWith(MockitoJUnitRunner.class) public class PermissionTest { @Test public void hasPermissionWhenFriend() { when(daoProvider.get("key")).thenReturn(dao); when(dao.areFriends("id")).thenReturn(true); assertTrue(dut.hasPermission()); } @Test public void hasPermissionWhenNotFriend() { when(daoProvider.get("key")).thenReturn(dao); when(dao.areFriends("id")).thenReturn(false); assertFalse(dut.hasPermission()); } } |
위 코드를 아래 코드처럼 수정해봤다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
@RunWith(MockitoJUnitRunner.class) public class PermissionTest { private static final boolean ACCEPT = true; private static final boolean DENY = false; private static final boolean FRIEND = true; private static final boolean NOT_FRIEND = false; @Test public void hasPermissionWhenFriend() { givenFriendCondition(FRIEND); boolean permission = dut.hasPermission(); assertThat(permission, is(ACCEPT)); } @Test public void hasPermissionWhenNotFriend() { givenFriendCondition(NOT_FRIEND); boolean permission = dut.hasPermission(); assertThat(permission, is(DENY)); } private void givenFriendCondition(boolean areFriends) { when(daoProvider.get("key")).thenReturn(dao); when(dao.areFriends("id")).thenReturn(areFriends); } } |
static final 의 필드 변수를 저렇게(실제로직에는 좀더 많이)… 더 보기 »읽기 좋은 테스트 코드 만들기
그래, 형이 운전 미숙으로 니 새차 좀 긁었어. 새찬데 언짢은 맘 공감하고, 또 완전 미안해… 근데, 그거 살짝 긁힌 걸로 진단서 끊는다는 거는 좀 아니잖아. 뭐 보험 할증 붙거나 말거나… 니가 병원까지 가면서 그렇게 고생하는데 그 정도 돈은 벌어야하지… 더 보기 »교통사고 내다.
테스트 케이스가 뭔지도 모르던 신입사원이 이제 TDD 신봉자가 되어 버렸다. 오늘 코드 중에 오류가 있어서 테스트 케이스를 봤는데, if ( A == X ) … else if ( B == Y || C == Z) … else … 위와 같은… 더 보기 »테스트 케이스 만들면서 주절주절
김장훈 콘서트를 다녀왔다. 혼자서 다녀왔다. 뭐, 혼자서 가게된 이유를 적어보면 과거 얘기부터 해야된다. . . . 원래 나도 공연하나에 적으면 5~7, 많으면 10~20만원씩하는 콘서트를 그닥 좋아하지 않은 그냥 평범한 남자였다. 그러다가 우연히 대학생 때 조성모 콘서트에서 음향장비 설치 아르바이트를 하게… 더 보기 »김장훈 콘서트 후기