JUnit로 검색한 결과 :: 시소커뮤니티[SSISO Community]
 
SSISO 카페 SSISO Source SSISO 구직 SSISO 쇼핑몰 SSISO 맛집
추천검색어 : JUnit   Log4j   ajax   spring   struts   struts-config.xml   Synchronized   책정보   Ajax 마스터하기   우측부분

회원가입 I 비밀번호 찾기


SSISO Community검색
SSISO Community메뉴
[카페목록보기]
[블로그등록하기]  
[블로그리스트]  
SSISO Community카페
블로그 카테고리
정치 경제
문화 칼럼
비디오게임 스포츠
핫이슈 TV
포토 온라인게임
PC게임 에뮬게임
라이프 사람들
유머 만화애니
방송 1
1 1
1 1
1 1
1 1
1

JUnit로 검색한 결과
등록일:2008-03-14 11:08:26
작성자:
제목:[이클립스 디버그 방법1]설정하기 및 BreakPoint


// 테스트 소스__/*주소에서 파일명 확장자 패스 분리하기*/

//^^ 제가 JUnit 용으로 작성한것이라 소스가 조금 지저분 합니다.양해부탁드려요ㅠㅠ

package test;

import java.io.IOException;

import JUnit.framework.TestCase;

public class HttpApplierParsingTest extends TestCase{


   public void testparsePAJPat() throws IOException
   {
    
    System.err.println("Test Start!!");

    String str = "/usr1/SUNWwbsvr/bin/https/webapps/ipic/ts/upload/pn07136612.cnt";
   
    for(int i=0; i<10; i++)
    {
     System.err.println("for loop => " + i);
    }
   
    String cntFilePath = null; //cnt파일패스
  String cntFileName = null; //cnt파일이름
  String cntFileExt = null; //cnt파일확장자
  
  int len = str.length(); //길이
  int slacePot = str.lastIndexOf("/"); //'/'위치
  int pointPot = str.lastIndexOf("."); //'.'위치
  int ipicslacePot = str.indexOf("ipic/") + 5; //'ipic/'위치
  
  System.err.println("[" + this.getClass().getName() + "] [cntPasing()] slacePot ==> " + slacePot);
  System.err.println("[" + this.getClass().getName() + "] [cntPasing()] pointPot ==> " + pointPot);
  System.err.println("[" + this.getClass().getName() + "] [cntPasing()] ipicslacePot ==> " + ipicslacePot);
  
  if( slacePot > -1 && ipicslacePot > -1 )
  {
   cntFilePath = str.substring(ipicslacePot, slacePot);
   cntFileName = str.substring(slacePot + 1);
  }
  
  if( pointPot > -1 )
  {
   cntFileExt = str.substring(pointPot + 1);
  }
  
  System.err.println("[" + this.getClass().getName() + "] [cntPasing()] cntFilePath ==> " + cntFilePath);
  System.err.println("[" + this.getClass().getName() + "] [cntPasing()] cntFileName ==> " + cntFileName);
  System.err.println("[" + this.getClass().getName() + "] [cntPasing()] cntFileExt ==> " + cntFileExt);
  
  
   }
  
   public static void main(String[] arg)
   {
    HttpApplierParsingTest htest = new HttpApplierParsingTest();
    try
    {
    htest.testparsePAJPat();
    }
    catch(Exception ex)
    {
     System.out.println("Exception : " + ex.getMessage());
    }
   }
 
}

 

// 실행결과

Test Start!!
for loop => 0
for loop => 1
for loop => 2
for loop => 3
for loop => 4
for loop => 5
for loop => 6
for loop => 7
for loop => 8
for loop => 9
[test.HttpApplierParsingTest] [cntPasing()] slacePot ==> 48
[test.HttpApplierParsingTest] [cntPasing()] pointPot ==> 59
[test.HttpApplierParsingTest] [cntPasing()] ipicslacePot ==> 39
[test.HttpApplierParsingTest] [cntPasing()] cntFilePath ==> ts/upload
[test.HttpApplierParsingTest] [cntPasing()] cntFileName ==> pn07136612.cnt
[test.HttpApplierParsingTest] [cntPasing()] cntFileExt ==> cnt

 

1. 디버깅 설정하기

디버깅할 파일을 선택하시고 Run > Debug()를 클릭하세요.

아래와 같은 창이 실행 됩니다.

 

Java Application에서 디버깅할 파일을 선택하시고 Name, Project, Main class를 입력한 후

Stop in main에 체크해 주십시오.!

Stop in main 은 디버깅시 메인에서 디버깅을 일시중지 하는 기능을 제공합니다.

 

 

설정이 다 되었으면 Debug를 눌러 주세요.

아래와 같이 화면이 나타납니다.

 

 

Stop in main에 체크 하였으므로 메인에서 디버깅이 멈추어 있는 것을 확인할 수 있습니다.


 

2. BreakPoint 설정하기

 

Breakpoint를 설정하면 프로그램이 실행되다가 Breakpoint가 설정된 부분에서 일시 정지합니다.

보통 에러가 의심스럽거나 프로그램이 어디까지 정상적으로 실행되는지 파악할때 많이 사용합니다.

 

저는 위 소스의 for문 근처에서 Breakpoint를 설정하여 보았습니다.

원하는 위치에 마우스를 오른쪽 버튼을 클릭하시고 Toggle Breakpoint를 선택해 주십시오.

 

아래와 같이 소스의 맨앞에 파란 동그라미가 생성된 것을 확인할 수 있습니다.


 

메인을 만나 일시정지 상태인 소스의 디버깅을 다시 진행하려면 resume()(단축키:F8) 버튼을 클릭하세요.

아래와 같이 디버깅이 다시 진행되다가 breakpoint가 설정된 for문 앞에서 일시정지하는 것을 발견할 수 있습니다.


 

 

다시 진행하려면 resume버튼이나 F8을 클릭하시면 됩니다.

참고로 for문을 한번 돌때마다 breakpoint를 만나므로 총 10회의 실행후에야 모든 결과를 확인할 수 있습니다.

 

다음 강좌에서 이러한 for문을 breakpoint할 때 사용하기 좋은 팁을 알려드리겠습니다.^^그럼 이만.ㅋㅋ

다음강좌 : http://blog.naver.com/rlaaudtnr8/50015602891