1. 도구개요 소개 각테스트대상분산환경에데몬을사용하여테스트대상프로그램을통해테스트를수행하고, 통합하며자동화하는 프레임워크 주요기능 테스트통합및자동화 카테고리 세부카테고리테스트설계및실행 커버리지 Test Integration / Automation 도구난이도상 라이선스형태 / 비용 Eclipse Public License / 무료사전설치도구 JDK 운영체제 Windows, Linux, Mac OS, UNIX 최신버전 2.1.1 (2012. 10) 특징 타도구와의테스트연계 보안과관련된 Trust Level 기능제공 원격테스트자동화 적용회사 / 프로젝트 관련도구 제작사 공식홈페이지 Fitnesse, NTAF IBM http://staf.sourceforge.net/ 1
2. 기능요약 각테스트대상분산환경에데몬을사용하여테스트대상프로그램을통해테스트를수행하고, 통합하며자동화하는프레임워크 주요기능타도구와의연동다중테스트원격테스트테스트수행라이브러리지원 지원여부 지원 (Fitnesse, STAX, NTAF, 등대부분의코드 ) 지원 (Handle 단위 ) 지원 지원 (JAVA, Perl, python 등 ) 1
3. 도구실행환경 Eclipse IDE 상에서설치및구현이가능 다양한 OS 를지원 Windows : Windows XP / Windows 7 (32, 64-bit 모두지원 ) Linux : 32, 64-bit 지원 Mac OS X : 32, 64-bit 지원 UNIX : 32, 64-bit 지원 JDK 필요 작동을위한자바개발환경 (JDK : Java development kit) 필요 STAX (SXE+) Fitnesse NTAF Services (Software Automation Framework) JDK (Java development kit) Windows / Linux / Mac OS / UNIX 1
4. 도구설치방법 세부목차 4.1 /STAX 다운받기 4.2 설치하기 4.3 설치확인하기 1
4. 도구설치방법 4.1 /STAX 다운받기 (1/3) http://staf.sourceforge.net/ 에서 /STAX 다운로드 2
4. 도구설치방법 4.1 /STAX 다운받기 (2/3) 다운로드 : 해당운영체제에맞는파일을선택후다운로드 본매뉴얼에서는윈도우용으로진행 3
4. 도구설치방법 4.1 /STAX 다운받기 (3/3) STAX 다운로드 : STAX 3.5.4 버전다운 본매뉴얼에서는 Windows 버전으로진행 4
4. 도구설치방법 4.2 설치하기 (1/9) 다운받은파일을설치 : Welcome 화면 압축해제후첫화면에서 Next 5
4. 도구설치방법 4.2 설치하기 (2/9) 다운받은파일을설치 : 약관동의및설치폴더지정 약관에동의후 Next 설치폴더를지정후 Next 6
4. 도구설치방법 4.2 설치하기 (3/9) 다운받은파일을설치 : 설치폴더지정 설치폴더지정후 Next 7
4. 도구설치방법 4.2 설치하기 (4/9) 다운받은파일을설치 : 설치형태지정 설치형태지정후 Next 8
4. 도구설치방법 4.2 설치하기 (5/9) 다운받은파일을설치 : 등록진행 등록진행여부및등록설정후 Next ( 본매뉴얼에서는등록을하지않음 ) 9
4. 도구설치방법 4.2 설치하기 (6/9) 다운받은파일을설치 : 세부설정 네트워크및 TCP 버전등 10
4. 도구설치방법 4.2 설치하기 (7/9) 다운받은파일을설치 : 설치요약 설치설정을확인하고 Next 11
4. 도구설치방법 4.2 설치하기 (8/9) 다운받은파일을설치 : 설치진행 12
4. 도구설치방법 4.2 설치하기 (9/9) 다운받은파일을설치 : 설치완료 Done 을눌러설치완료 13
4. 도구설치방법 4.3 설치확인하기 설치결과 StartProc 를실행하면데몬이실행 14
5. 도구기능소개 세부목차 5.1 의특징 5.2 Demon 의실행 5.3 의명령어 1
5. 도구기능소개 5.1 의특징 (1/3) 는각테스트대상분산환경에데몬 (stafproc) 이떠있으며, 테스트대상프로그램은데몬을통해서로통신을수행. 데몬은시스템의성능에영향을거의끼치지않으며, 거의대부분의시스템환경에설치및수행이가능. 보안과관련된 Trust level 기능을제공하고있어손쉬운보안설정가능. 2
5. 도구기능소개 5.1 의특징 (2/3) End-to-End 각 Proc 를통해테스트데이터를교환 3
5. 도구기능소개 5.1 의특징 (3/3) 는크게내부서비스 (internal service) 와외부서비스 (external service) 로구성 Java, C, C++, Perl 등의다양한언어로 서비스를쉽게개발가능 4
5. 도구기능소개 5.2 Demon 의실행 Demon 의실행 : C:\\StartProc.bat Demon 이실행되어야 에관련된연결및테스트수행가능 5
5. 도구기능소개 5.3 의명령어 (1/6) ping ping : staf <HOST ADDRESS> ping ping HOST 주소 (IP Address, Host name 등 ) 에서 Demon 이사용가능하고, 답이오는지확인 6
5. 도구기능소개 5.3 의명령어 (2/6) service : staf <HOST ADDRESS> service < 명령어 > 서비스연결, 추가, 제거등을수행 7
5. 도구기능소개 5.3 의명령어 (3/6) service list : staf <HOST ADDRESS> service List 사용가능한서비스목록을출력 8
5. 도구기능소개 5.3 의명령어 (4/6) shutdown : 종료에대해수행할내용명시 Local Service 에서가능한내용 9
5. 도구기능소개 5.3 의명령어 (5/6) var list : staf <HOST ADDRESS> var list 사용되고있는변수의목록을표시 10
5. 도구기능소개 5.3 의명령어 (6/6) handle : staf <HOST ADDRESS> handle < 명령어 > 핸들처리상황을출력 ( 호출시마다 1 씩증가됨을확인 ) 11
6. 도구활용예제 세부목차 6.1 예제소개 6.2 환경설정 6.3 테스트수행 1
6. 도구활용예제 6.1 예제소개 예제시스템 : Demo코드를통한테스트수행 테스트수행내용에러를내재하고있는코드를작성 라이브러리를사용하여테스트수행할수있는코드작성원격에서사용한다는가정하에컴퓨터이름을통한 테스트수행 IP주소를바탕으로추가테스트수행을실시하고테스트확인 2
6. 도구활용예제 6.2 환경설정.cfg 수정 현재사용하고있는컴퓨터를신뢰레벨최대한으로설정 ( 보안문제해결 ) 3
6. 도구활용예제 6.3 테스트수행 (1/5) Demo Code 작성 홈페이지에게시된데모파일을활용하여코드작성 4
6. 도구활용예제 6.3 테스트수행 (2/5) Demo Code 실행 작성된코드를바탕으로실행 5
6. 도구활용예제 6.3 테스트수행 (3/5) Demo Code 실행 컴퓨터이름으로테스트수행 6
6. 도구활용예제 6.3 테스트수행 (4/5) Demo Code 실행 원격으로받아온테스트수행로그 7
6. 도구활용예제 6.3 테스트수행 (5/5) Demo Code 실행 IP 주소를바탕으로추가 Test 수행 ( 핸들 8) 8
7. FAQ 질문 1) 사용하는데불편함이있습니다. 좀더편하게사용하는방법이없을까요? 답변 1 : 는라이브러리와수행할수있는코드를제공하고있는자동테스트프레임워크입니다. 그렇기때문에코드접근적으로사용자에맞는테스트자동화홖경을제공하고있으며, 특히 Fitnesse 와연동하여사용하는경우가많습니다. 현재 NHN 에서는 와 Fitnesse 와연동하여 NTAF 테스트자동화코드를배포하고있습니다. 이를홗용하면더욱편리한테스트를수행할수있습니다. 질문 2) STAX 를실행이되지않습니다. 답변 2 : STAX 는 가실행되어야실행되는서비스입니다. startproc.bat 를실행한상태에서실행해보시면정상적으로작동됨을확인할수있습니다. 1
8. 도구평가 활용성 여러코드와라이브러리를배포하고, 언어에구애받지않고원격에서테스트가능 범용성 대부분의언어를지원하며, 테스트도구와의연계가뛰어남 호환성 Java 를바탕으로하여여러운영체제에서작동가능 성능 원격통합테스트자동화성격을띄고있고, 테스트수행역시라이브러리와코드에의존하고있기때문에, 작성상태에따라달라질수있음 기타 STAX에서별도의 UI를제공하나, 일반적으로사용자에의해 UI코드구성을하여테스트수행 도구평가의견 는직접테스트를수행하는도구가아니라, 테스트환경을제공하고통합하 며자동화를제공 강력한기능에반해코드에대한지식이있어야하므로초보가하기에는어려움 1
9. 용어정리 본매뉴얼에서사용하고있는용어의정리 NTAF Demon NHN Test Automation Framework 의약자로 FitNesse 와 의장점을결 합하여개발된사용자인수테스트 (Acceptance Test) 자동화프레임워크 주기적인서비스요청을처리하기위해계속실행되는프로그램. 수집된요구들을또다른프로그램이나프로세스들이처리할수있도록적절히전달하는역할수행 1