"SW 테스트 자동화"의 두 판 사이의 차이

TRACE32
이동: 둘러보기, 검색
(새 문서: <h2>기능 소개</h2> <p>  본 페이지에서는 SW 프로그램을 테스트하는 여러 방법 중, 실제 타겟 프로세서에서 SW 테스트를 진행하는 방법에...)
 
5번째 줄: 5번째 줄:
 
<h2>기능 구성 및 사용법</h2>
 
<h2>기능 구성 및 사용법</h2>
 
<p>해당 기능 수행시 최초 화면은 아래와 같다.</p>
 
<p>해당 기능 수행시 최초 화면은 아래와 같다.</p>
<p>1. Search : 기존의 SW테스트 케이스를 불러오기</p>
+
<h3>Search : 기존의 SW테스트 케이스를 불러오기</h3>
<p>2. Create : SW 테스트에 사용할 케이스를 새로 생성</p>
+
<h3><strong>Create : </strong>SW 테스트에 사용할 케이스를 새로 생성</h3>
 
<p>&nbsp; &nbsp;해당 버튼을 누르면 아래와 같이 테스트 대상 및 input 테스트 케이스를 만들 수 있는 기능이 실행된다.</p>
 
<p>&nbsp; &nbsp;해당 버튼을 누르면 아래와 같이 테스트 대상 및 input 테스트 케이스를 만들 수 있는 기능이 실행된다.</p>
 +
<p>&lt;사진&gt;</p>
 +
<p>&nbsp; 1)&nbsp;Start Address: 테스트유닛의 시작점으로 테스트케이스의 Input과 Pre-Condtion을 이 시점에서 대입</p>
 +
<p>&nbsp; &nbsp; &nbsp;END Addresss: 테스트유닛을 실행시킨 뒤 그에 대한 결과값을 확인하는 주소</p>
 +
<p>&nbsp; &nbsp; &nbsp;만약 끝주소를 입력하지 않은 경우에는 자동으로 Start Address심볼의 Exit 주소를 찾아 대체됨</p>
 +
<p>&nbsp; 2) 테스트시 옵션 설정</p>
 +
<ul>
 +
<li>TEST MODE : 테스트방식을 결정합니다</li>
 +
</ul>
 +
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; - CALL 모드 : 함수 단위 테스트시 <strong>함수 호출을 TRACE32가 대신 실행</strong></p>
 +
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 테스트 대상이 반복적으로 호출되지 않더라도 이 모드를 이용하면 빠르게 자동화하여 테스트 가능</p>
 +
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; - BREAK 모드 : start Address/ End Address 시점에 Breakpoint를 잡고 타겟 수행을 멈추어 테스트하는 방식</p>
 +
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;테스트유닛을 실행시키기 위해서는 타겟이 그 코드를 실제 수행해야함</p>
 +
<ul>
 +
<li>FLASH Download : 테스트 시작시 지정한 ELF 이미지를 타겟 flash 에 write&nbsp;</li>
 +
</ul>
 +
<ul>
 +
<li>Debug Option :&nbsp;테스트중 FAIL이 발생하면 그 시점에 타겟을 멈춤</li>
 +
</ul>
 +
<p><span style="white-space: pre;"> </span>문제가 발생한 테스트케이스를 디버깅하여 FAIL의 원인을 찾는데 활용</p>
 +
<ul>
 +
<li>RUNTIME Test : 각 테스트케이스별 실행시간을 측정</li>
 +
</ul>
 +
<p><span style="white-space: pre;"> </span>- Timer Register Address : 타이밍 측정에 사용할 내부 타이머 레지스터 주소</p>
 +
<p><span style="white-space: pre;"> </span>- Timer 1 Tick Time : Timer 1 tick 당 시간 정보</p>
 +
<p><span style="white-space: pre;"> </span>- MAX Timer Value : 16bit or 32bit 선택, Max Timer 값 지정</p>
 +
<ul>
 +
<li>Step Num :&nbsp; 매개변수 값을 입력 할 프로그램 시점을 맞추기 위해 진입점 도달 후 Step횟수를 설정</li>
 +
</ul>
 +
<p>&nbsp; 3) 설정이 완료되어 DONE 버튼을 누르면&nbsp;테스트 케이스를 작성하기 위한 csv파일 포맷 파일이 생성되고 엑셀과 연동되어 파일이 오픈&nbsp;&nbsp;</p>
 +
<p>&nbsp; &nbsp;&lt;사진&gt;</p>
 +
<p>&nbsp; &nbsp; &nbsp;위의 빨간 네모 안의 영역에 테스트 케이스를 작성한다.</p>
 +
<p>&nbsp; &nbsp; &nbsp;&lt;TYPE 정보&gt;</p>
 +
<p>&nbsp; &nbsp; &nbsp;INP : Parameter, 매개변수</p>
 +
<p>&nbsp; &nbsp; &nbsp;PRE : Pre-Condition, 전역변수</p>
 +
<p>&nbsp; &nbsp; &nbsp;OUT : Return, Output-Value, 리턴값, 전역변수 결과값</p>
 +
<p>&nbsp; &nbsp; &nbsp;^ : Floating Format (심볼 앞에 마킹)</p>
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>
 +
<p>&nbsp; 4) 테스트 케이스 작성 후 저장하면 최초 메인창에서 Testcase File 경로에 대한 정보가 아래와 같이 자동으로 추가 된다.</p>
 +
<p>&nbsp; 사용자가 원하는 테스트케이스를 수동으로 만들어서 아래 리스트에 추가할 수 있다.</p>
 +
<p>&nbsp;</p>
 +
<p>&nbsp; 5) Start test 를 클릭하여 테스트를 자동으로 실행하고, 완료 후 저장된 Result 결과 파일이 자동으로 저장 된다.</p>
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>
 
<p>&nbsp;</p>

2018년 1월 17일 (수) 14:59 판

기능 소개

  본 페이지에서는 SW 프로그램을 테스트하는 여러 방법 중, 실제 타겟 프로세서에서 SW 테스트를 진행하는 방법에 대해 설명한다. 실제 타겟에서의 SW 테스트를 위해서는 "코드가 다운로드된 타겟" 과 "HW 디버깅 장비 TRACE32" 가 필요하다.

 이 때, HW 디버깅 장비는 원하는 프로그램 위치에서 타겟 코어의 동작을 멈춘 후 입력 값을 변경하고, 연산이 완료된 출력 값을 가져오는 역할을 수행한다. 특히 TRACE32 는 수많은 테스트케이스를 수행하는데 있어서 개발자가 직접 수동/반복적으로 테스트 해야 했던 일을 자동화하여 많은 시간과 비용을 줄여 줄 수있다.

 

기능 구성 및 사용법

해당 기능 수행시 최초 화면은 아래와 같다.

Search : 기존의 SW테스트 케이스를 불러오기

Create : SW 테스트에 사용할 케이스를 새로 생성

   해당 버튼을 누르면 아래와 같이 테스트 대상 및 input 테스트 케이스를 만들 수 있는 기능이 실행된다.

<사진>

  1) Start Address: 테스트유닛의 시작점으로 테스트케이스의 Input과 Pre-Condtion을 이 시점에서 대입

     END Addresss: 테스트유닛을 실행시킨 뒤 그에 대한 결과값을 확인하는 주소

     만약 끝주소를 입력하지 않은 경우에는 자동으로 Start Address심볼의 Exit 주소를 찾아 대체됨

  2) 테스트시 옵션 설정

  • TEST MODE : 테스트방식을 결정합니다

          - CALL 모드 : 함수 단위 테스트시 함수 호출을 TRACE32가 대신 실행

                          테스트 대상이 반복적으로 호출되지 않더라도 이 모드를 이용하면 빠르게 자동화하여 테스트 가능

          - BREAK 모드 : start Address/ End Address 시점에 Breakpoint를 잡고 타겟 수행을 멈추어 테스트하는 방식

                           테스트유닛을 실행시키기 위해서는 타겟이 그 코드를 실제 수행해야함

  • FLASH Download : 테스트 시작시 지정한 ELF 이미지를 타겟 flash 에 write 
  • Debug Option : 테스트중 FAIL이 발생하면 그 시점에 타겟을 멈춤

문제가 발생한 테스트케이스를 디버깅하여 FAIL의 원인을 찾는데 활용

  • RUNTIME Test : 각 테스트케이스별 실행시간을 측정

- Timer Register Address : 타이밍 측정에 사용할 내부 타이머 레지스터 주소

- Timer 1 Tick Time : Timer 1 tick 당 시간 정보

- MAX Timer Value : 16bit or 32bit 선택, Max Timer 값 지정

  • Step Num :  매개변수 값을 입력 할 프로그램 시점을 맞추기 위해 진입점 도달 후 Step횟수를 설정

  3) 설정이 완료되어 DONE 버튼을 누르면 테스트 케이스를 작성하기 위한 csv파일 포맷 파일이 생성되고 엑셀과 연동되어 파일이 오픈  

   <사진>

     위의 빨간 네모 안의 영역에 테스트 케이스를 작성한다.

     <TYPE 정보>

     INP : Parameter, 매개변수

     PRE : Pre-Condition, 전역변수

     OUT : Return, Output-Value, 리턴값, 전역변수 결과값

     ^ : Floating Format (심볼 앞에 마킹)

 

  4) 테스트 케이스 작성 후 저장하면 최초 메인창에서 Testcase File 경로에 대한 정보가 아래와 같이 자동으로 추가 된다.

  사용자가 원하는 테스트케이스를 수동으로 만들어서 아래 리스트에 추가할 수 있다.

 

  5) Start test 를 클릭하여 테스트를 자동으로 실행하고, 완료 후 저장된 Result 결과 파일이 자동으로 저장 된다.