SlideShare a Scribd company logo
1 of 35
Junit 테스트 도구
AgitarOne Junit Generator
소개서
Code based test generation tools
SW품질전문 기업 ㈜투비웨어
http://www.tobeware.com
2
■ 제안사 소개 1/2
㈜투비웨어는 다년간의 IT분야의 경험을 가진 기술인력으로 구성되어 있으며, IT Lifecycle 전반의 S/W 공급 및 시스템
품질 관리, 보안 영역에 필요한 솔루션과 컨설팅 서비스 공급을 사업 영역으로 수행하고 있습니다.
회 사 명 ㈜투비웨어 대 표 자 한경우
사 업 분 야
1. HP 솔루션(LoadRunner,QC,UFT)
2. SIOS 이중화 솔루션(SteelEye)
3. DB모니터링 솔루션(DB GURU)
4. 보안 솔루션(SolidStep, Vometric)
5. Java Unit 테스트 자동화 솔루션(AgitarOne)
6. 음성인식 텍스트 변환 솔루션(SYSTRNA STT)
주 소 경기도 성남시 분당구 운중로 129(963번지) 마크씨티 옐로우 601호
전 화 번 호 02-6673-0061 (Fax. 02-6673-0062)
회 사 설 립 년 도 2012년 8월
해 당 부 문 종 사 기 간 2012년 8월 ~ 2016년 현재
주요연혁
 2012년
- ㈜투비웨어 설립
- KT 차세대 프로젝트 BIT 시스템 성능 최적화 컨설팅
 2013년
- 동국제강그룹 ㈜DKUNC HP 소프트웨어 사업부 합병
- 농협, 기업은행 차세대 프로젝트 시스템 성능 최적화 컨설팅
 2014년
- 대검찰청, 여성가족부, 행정안전부, 국민은행, 기업은행 S/W공급 및 시스템 성능 최적화 컨설팅
 2015년
- 행자부, 자산관리 공사 S/W 공급 및 시스템 성능 컨설팅, SIOS S/W(SteelEye) 파트너 계약, 영상개선 제품 론칭,
 2016년
- 대법원, 경남은행, 현대캐피탈, NH투자증권 S/W공급 및 시스템 성능 최적화 컨설팅
3
■ 제안사 소개 2/2
㈜투비웨어는 다년간의 IT분야의 경험을 가진 기술인력으로 구성되어 있으며, IT Lifecycle 전반의 S/W 공급 및 시스템
품질 관리, 보안 영역에 필요한 솔루션과 컨설팅 서비스 공급을 사업 영역으로 수행하고 있습니다.
DB모니터링 및 시스템 튜닝
소프트웨어 보안 및 인증 이중화 고가용성 HA 및 복제
S/W 테스팅 및 품질관리
• DB GURU
• Smart Tuning Management
• ALM(어플리케이션 라이프사이클 관리)
• Quality Center(테스트 공정관리)
• QuickTest Professional(기능테스트 자동화)
• LoadRunner(업계 표준 성능/부하 테스트)
• TestOne Mobile(모바일 테스트 자동화)
• McCabe IQ(소스코드 정적 분석도구)
• AgitarOne(단위테스트 자동화)
• Vometric
• SolidStep
• SIOS SteelEye
음성 텍스트 변환
•Systran STT
•Systran LDK
TestOne M VormetricSteelEye SolidStepMcCabe
LoadRunner ALM/QC UFT/QTPSTTAgitarOne
4
AgitarOne 개요01
SoftwareAgitation
• 테스트 데이터자동생성
Code Rules
• 200여 가지 이상의 Coding
Rule지원
DashBoard
• Management Dashboard 지원
JUnitTest Generation
• 단위테스트테스트케이스
자동생성
• 코드 커버리지지원
AgitarOne은 Java로 개발중인 Eclipse 프로젝트에 자동화된 단위 테스트의 환경을 제공하여 테스트 시간을 대폭 단축 시켜
개발 비용을 절감하게하며, 작성된 소스 코드들이 실질적으로 수행되는지 명확히 파악할 수 있도록 하여 소스 코드의 품질을
향상시켜 줄 수 있는 Java 개발자의 단위 테스트 자동화 솔루션입니다.
5
단위테스트 필요성 - 소프트웨어 품질과 결함01
0%
20%
40%
60%
80%
Requirement
& Design
Coding &
Unit test
User
Acceptance
Test
Production
백
결함 생성
주요 결함들은 요구사항 정의 및 설
계 단계에서 생성됨
0%
20%
40%
60%
80%
Requirement &
Design
Coding & Unit
test
User
Acceptance
Test
Production
백
결함 발견
반면 사용자 인수 테스트나 운영단으로 넘어간 이후에야
주요 결함들이 발견됨
결함 제거 비용
서비스
기획
개발
QA
(기능)
QA
(성능)
QC
(Infra)
QC
(Apps)
운영
양산시제품
기능시험
(Functional Testing)
성능 시험
(Performance
Testing) SMS/ NMS
서비스 감시
품질 관리(QC)품질 보증(QA)
변경/
업그레이드
단위/
시스템 시험
회귀시험
Production QA
운영개발/구축
테스트 프로세스 관리(Test Mgmt.)
좋은 품질
높은 성능
무장애무결함
단위시험
(Unit Testing)
6
단위테스트 필요성 – 지금까지의 테스트는...01
V-모델 방법론은 구축 및 테스트 프로세스의 모든 시점에서 고품질이 보장될 수 있도록 프로세스를 체계화 합니다.
지금 까지 진행했던 프로젝트에서 단위 테스트를 수행한 적이 있던가요?
단위 테스트가 수행되어 개발자의 프로그래밍 생산성이 높아진다면 품질 보증 부서의 업무 효율도 자연히 높아집니다.
시스템 설계
단위 테스트단위모듈설계
통합 테스트아키텍쳐 설계
시스템 테스트
요구사항 분석
프로그램 개발(코딩)
인수 테스트
분석 설계 단계
검증 확인
과정검증
(Verification)
결과 유효화 확인
(Validation)
요구사항검증
기능 및 외부연계 검증
성능/보안 검증
성능/보안 테스트
모듈 검증
기능흐름과 내부연계 검증
3자 검증(테스트)
대상범위
품질관리, PMO업무
대상범위
How did you work
Unit Test ?
7
단위 테스트 자동화 솔루션 AgitarOne의 필요성01
Code
개발코드의복잡성 불충분한테스트
 개발 담당자는 개발 이외의 테스트를 별도로 수행하는 업무에 대한 부담이큼
 짧은 개발기간에 단위테스트를 위한 테스트 코드를 작성하는데 너무 많은 시간이 소요
(복잡한 프로그램일 수록 테스트 코드는 더많음)
 소스코드의 잦은 변경으로 인한 테스트 소스코드를 다시 작성해야 함
 테스트를 위한 수 많은 테스트 데이터 생성 및 실행이 현실상어려움
 CodeRule에 입각한 코드 개발은 강제성을 띠지 않는 이상 지켜지기어려움
 개발 담당자가 개발한 소스코드가 모두 실행 가능한 소스코드인 것인지에 대한 검증이어려움
Test
8
단위테스트 도구 JUnit과 AgitarOne의 차이점01
AgitarOne은 개발자의 수동 코딩에 대한 단위 테스트 노력을 절대적으로 줄여 줍니다.
• JUnit Framework: Test Execution
• AgitarOne: Test Generation(Action Code & Data) & Behavior Checking
AgitarOne CodeJunit Code
Class 와 Method에 대한
빈 테스트 코드 생성
테스트 코드 및 데이터 직접 생성
자동으로 테스트 코드와 데이터가
프로그램 로직 조건에 의해 자동
생성 & 결과 체크
9
AgitarOne 환경구성01
Master AgitarOne Server
(Apache-tomcat)
Client PC Client PC Client PC
DashBoard 단위테스트
AgitarOne 관리자 페이지
AgitarOne은 Master Server와 Client PC 로 구성되며 Master Server에서는 각 Client PC 와의 통신을 통해 라이선스 및
각 Client 별 작업 현황, 계정관리, Plug-in 배포 등을 할 수 있으며, Client PC 에서는 단위테스트 실행 및 DashBoard를
통한 테스트 결과 등을 확인 할 수 있습니다.
• Eclipse Client install 2분
Server Install 20분
초보자도 바로 사용가능
10
AgitarOne 솔루션구성01
Code Rules Enforcement Java Code Analysis Engine
Management Dashboard
AgitarOne JUnit Generator AgitarOne Agitator
AgitarOne 은 테스트케이스를 생성하는 Junit Generator, 소스코드의 입•출력값을 검증해주는 Agitator, CodeRule 검증,
테스트 결과를 열람할 수 있는 DashBoard 등으로 구성 되어있습니다.
- 손쉬운회귀테스트
- 코드의 복잡성감소
- 용이한유지보수
- 코드의 복잡성예방
- Deliver better code faster
- Build for change
11
테스트 절차 1/2 Junit Generator (테스트 케이스 자동생성)02
소스코드
개발자 테스트 완료
테스트 케이스
자동생성
결과분석
소스 코드생성/수정
AgitarOne
JUnit Test
AgitarOne에서 소스코드를 분석하여 테스트 케이스를 자동 생성하여 테스트 결과를 분석하고 실행되지 않은 소스 코드의
라인을 수정 및 재테스트 함으로써 소스코드에 대한 신뢰성을 높일 수 있습니다.
Better
Tests
Better
Code
JUnit Generation
Software
Agitation
12
테스트 절차 2/2 Agitator (테스트 데이터 자동생성)02
AgitarOne에서 소스코드를 분석하여 필요한 테스트 데이터를 자동생성 하여 생성된 테스트데이터의 Return 값을 확인
함으로서 쉽고 빠르게 오류를 찾아낼 수 있습니다.
소스코드
개발자 테스트 완료
테스트데이터
자동생성
결과분석
소스 코드생성/수정
AgitarOne
Agitator
Better
Tests
Better
Code
JUnit Generation
Software
Agitation
13
주요기능 - EclipsePlug-in제공03
AgitarOne의 Client 설치는 별도의 설치 프로그램 없이 Eclipse의 Software Updates를 통해 AgitarOne의 서버에 접속하여
프로그램을 설치하므로 AgitarOne 설치 프로그램 배포가 필요 없습니다.
14
주요기능 - JUnitGenerator(테스트케이스자동생성)03
AgitarOne의 Junit Generator는 개발자가 개발한 소스코드의 단위테스트를 위한 테스트케이스를 자동 생성해 줌으로써
테스트 기간 및 인력, 비용을 대폭 감소시켜 주며, 단위테스트 자동화는 어플리케이션에 대한 신뢰성을 높이고 품질 향상에
도움을 줍니다.
원본소스코
드
Agitar JUnit Generator를
통해 자동 생성된테스트 케이스
15
주요기능 - CodeCoverage 지원03
Junit Generator를 통하여 생성한 테스트 케이스를 실행하면 Code Coverage가 자동 측정되며 각 Method별 Coverage를
확인 할 수 있으며, Edit 창에서 컬러(연두색, 노란색, 빨간색)를 통하여 실행된 라인과 실행되지 않은 라인을 확인하여
라인이 실행 될 수 있도록 소스코드에 대한 신뢰성을 높일 수 있습니다.
• 연두색 –모든 라인이 실행 되었음
• 빨간색 –모든 라인이 실행 되지 않았음
16
주요기능 - Agitator (테스트 데이터 자동생성)03
개발자가 개발한 소스코드에 대한 테스트 데이터를 자동 생성해 주며, 생성된 테스트 데이터의 Return값을 확인 할 수
있으며, Return값을 확인하여 소스코드의 안정성을 확인 할 수 있습니다.
17
주요기능 - Agitator (테스트 데이터 자동생성)03
테스트 데이터 생성시 테스트 데이터의 범위를 사용자가 지정하여 범위에 따른 다양한 테스트 데이터를 테스트 할 수
있으며, 테스트 데이터 생성에 많은 시간을 단축할 수 있습니다.
-100 <= x <=100
소스코드의 입력값 범위를 사용자가 직접
지정할 수 있으며, 추가 또한 가능합니다.
수정
추가
18
주요기능 - Agitator (테스트 데이터 자동생성)03
Agitator는 예외처리 문이 필요로 하는 부분이 있을 경우를 알려줌으로써, 오류가 발생할 수 있는 부분을 명시하여 오류
발생을 예방 할 수 있습니다.
추가
19
주요기능 - Agitator (테스트 데이터 자동생성)03
테스트 데이터를 사용자가 변경하여 테스트 수행 시 변경 이력이 config 파일에 저장되며, “Revert” 기능을 이용하여
테스트 이전 단계로 복원 할 수 있습니다.
추가
테스트 데이터 변경이력 변경이력에 대한 Config 파일
20
주요기능 - CodeRule 지원03
 소스코드에서 발생하기 쉬운 오류를 조기에 발견(잠재적 오류, 성능저하, 메모리 누수 등)하여 테스트 이전에 오류의
대부분을 발견하고 제거함으로써, 테스트 비용 및 시간을 절감하여 테스트의 생산성을 향상시킵니다.
 AgitarOne은 200개 이상의 Coding Rule을 지원합니다.
추가
CodeRule 에 대한 테스트 결과를표시
CodeRule 상세정보
21
주요기능 - CodeRule 항목03
 코드의 일관된 스타일을 유지 및 배포함으로써 소스코드의 가독성 향상 및 유지보수를 용이하게 합니다.
 불필요한 코드를 제거하고 메모리 누수를 예방하여 성능저하를 예방합니다.
 조기에 오류를 발견함으로써 프로젝트 비용 및 일정을 절감합니다.
추가
No Category Description
1 Coding Conventions Java 코딩 지침
2 Formatting Coding Style 관련규칙(들여쓰기, 라인길이 등등)
3 J2EE J2EE 기반의 어플리케이션의 Servlet과 EJB 관련 규칙(자원 해제 등)
4 JUnit 어플리케이션 테스트를 위한 Junit 관련규칙
5 Javadoc 클래스, 메소드, 패키지 등 주석에 대한 관련규칙
6 Metrics 소프트웨어의 복잡도 및 사이즈 등을 측정할 수있는 메트릭
7 Naming 클래스, 메소드, 변수 등의 Naming 규칙
8 Object Oriented Programming 객체지향 프로그래밍에 해당되는 기본규칙
9 Possible Bugs 잠재적인 에러가 발생할 수 있는 소스코드체크
10 Unused Code 미사용 변수 및 메소드 사용 금지규칙
22
주요기능 - Dashboard03
Management Dashboard는 단위 테스트, Agitation의 테스트 결과, 소프트웨어 프로젝트는 물론 그 프로젝트 안에 있는
개별적인 package, class, method들에 대한 전반적인 테스트 결과 정보들을 제공 합니다.
추가
높은 위험도의 코드 확인 가능
23
구성사례 (1/4)04
요구사항분석부터 설계를 거쳐 개발된 프로그램이 요구사항을 만족했는지 검증하는 단계와 단계별 테스트를 V-모델을 이
용해 관리
코딩
요구사항
분석
상위설계
상세설계
Acceptance
Test
System
Test
Integration
Test
Unit
Test
Unit Test 계획
Integration Test 계획
System Test 계획
Acceptance Test 계획
PMD, McCabe
테스트 시나리오,케이스
비즈니스 중심
요구사항 검증
요구사항
설계
상세설계
구현
인수테스트
시스템테스트
통합테스트
단위테스트
HPE LoadRunner
AgitarOne
테스트 산출물
Jenkins, CVS, HPE Quality Center
HPE UFT(UI 자동화)
각종 산출물로 관리
V-모델 구성환경
24
구성사례 (2/4)04
소스코드의 테스트 자동화를 위해 개발/운영환경과 연계하여 프로젝트관리 및 CI환경을 구성함. 요구사항, 이슈, 오류 등
을 등록하고 관리할 수 있으며 CI환경을 통해 자동테스트를 수행
고객사
PM
/
QA
개발사 CI서버
요구사항 및 개발
요구사항
도출
Redmine
(요구사항등록
및 진척도관리)
요구사항준수율 100%
개발진행
개발
진행
파악
Roadmap
(요구사항
달성도 판단)
CVS
(형상관리)
ANT
(통합빌드)
PMD
(코딩표준)
AgitarOne
(단위 및
통합테스트)
개발 및 테스트
품질
현황
분석
Jenkis
(CI 및 품질관리)
인수
McCabe
(소스코드 진척 확인, 복잡도, Code
Coverage )
Release
(완료 및 인수시
점 판단))
프로젝트관리 인수
빌드성공율
100%
단위테스트성공율 100%
검출건수
High 0건 이하
N, L 250건 이하
커버리지 60% 복잡도30이상 1% 이하
25
구성사례 (3/4)04
요구사항에 대한 요구사항추적 매트릭스, 개발단계의 관리를 위한 개발진척관리, 단위테스트(AgitarOne)와 통합 테스트를
수행
분석/설계 개발 테스트
요 구 사 항 추 적
메 트 릭 스
개 발 진 척 관 리
단위테스트 결과보고
(테스트케이스정의서)
통합테스트 결과보고
(통합테스트시나리오)
시스템테스트 결과보고
(시스템테스트설계)
단위프로그램관리
요 구 사 항 정 의
프로그램 설계
DB 설계
화면(UI)설계
소스코드
(Java, SQL)
UI프로그램
(JSP)
White Box Test
Black Box Test
요 구 사 항 I D
프 로 그 램 명
테 이 블 명
화 면 I D
프 로 그 램 I D
프 로 그 램
작 성 현 황
일 일 집 계
Test Case ID, 개발소스명
RFP, 제안서,
사업수행계획서, 인터뷰
요 구 사 항 추 출
단위테스트
(JenLins, AgitarOne)
통합테스트
(Manual)
시스템테스트
(LoadRunner)
주
요
산
출
물
26
구성사례 (4/4)04
사업초기 품질측정지표 및 지표측정방안을 수립하고 품질목표를 달성하도록 품질관리 수행
측정지표 지표설명 달성목표 지표 측정방안 달성여부
요구사항 준수율
등록(Redmine)된 전체 일감 (기능요구사
항) 대비 완료된 일감의 비율 100%
Redmine의 로드맵에서 각 버
전별 진척율로 측정
●
빌드 안정성 1Day/1Build 룰 적용, 5일간 빌드가 성공 한 횟수 100%
CI서버의 Build History에서 Build
Stability로 측정
●
단위 테스트 성공률
AgitarOne을 통해 단위테스트를 실행하여 전
체 테스트 대비 성공한 테스트 비율 100%
AgitarOne 대쉬보드 Test Result
로 측정
●
코드 인스펙션
PMD에 의해 검출된 건수에 대해 Health Thresh
olds 구간을 설정하여 측정
Low, Normal 200건 이
하 High priority 0
건
CI서버의 Build History에서 PMD
로 측정
●
코드 복잡도
McCabe(Complexity)에서 전체 코드 라인 대
비 검출 건의 비율로 측정 over30 1% 이하 McCabe 대쉬보드 Result로 측정 ●
코드 커버리지
McCabe를 통해 Class, Method, Block, Line,
Decision/Conditiom의 코드 커버리지 측정 Class Coverage 70% McCabe 대쉬보드 Result로 측정 ●
27
활용방안 (1/4)04
AgitarOne 단위테스트 자동화 도구는 Waterfall, Agile 방식등의 개발단계에서 개발자의 단위테스트 지원 부터,
QA매니저의 품질진단 및 통합테스트에서 운영 시 까지 프로그램 변경에 따른 회귀테스트 자동화 지원으로 품질의 유지 및
개선프로세스에 활용 됩니다.
개발/단위테스트 통합테스트 시스템테스트 운영/Field
품질개선 프로세스
품질진단 프로세스
품질유지 프로세스 준비 및 작업
28
활용방안 (2/4) – 품질개선 프로세스04
코딩/단위테스트 단계의 품질을 향상 시켜줍니다. 버그 수정 및 변경에 용이하도록 가독성 높은 코드를 유지할 수 있도록
지원 합니다. 코딩 단계 이후 부터 지속 활용을 권장합니다.
개발자
시작 코딩
자동테스트
종료
Fail
자동테스트
결과확인
테스트결과
관리
프로세스
Pass
품질개선 프로세스
29
활용방안 (3/4) – 품질유지 프로세스04
개발자는 QA팀 또는 테스터로 부터 받은 보고서를 검토하여 결함여부를 파악하고 결함 시 코드 수정 및 자동화테스트를
수행합니다. 결함으로 판단되지 않을 경우도 자동화테스트를 수행 후 종료 처리 합니다.
버그수정 및 S/W Degrade예방과 테스트 재작업 공수를 줄여주어 통합테스트 단계 이후도 지속 권장 합니다.
개발자 시작 종료
결함확인
및 리뷰
코드수정
자동화테스
트 수행
보고서 검토
Fail
Pass
자동화테스트
실행
Fail
Pass
품질유지 프로세스
30
활용방안 (4/4) – 품질진단 프로세스04
QA담당자는 개발팀에서 생산한 코드의 매뉴얼적인 코드와 보고서 Inspection 외에도 단위테스트 결과를 진단할 수 있습
니다. 프로젝트의 현황을 파악할 수 있고 위험에 대한 사전대처가 가능해 집니다.
AgitarOne을 활용한 품질 진단은 코딩 단계 이후에도 계속 활용될 수 있습니다.
QA담당
시작
보고서 생성
테스트결과서
보고서 검토
개발자
피드백
종료
품질진단 프로세스
31
AgitarOne 도입효과 (1/2)04
가시적이지 않았던 소스코드 단
위테스트 수행 및 커버리지 확인
시각화
CodeRule지원 소스코드 오
류 조기 발견
회귀테스트 수행 Degrade 조
기대처로 S/W 품질 유지
개발
지원
품질
향상
비용
절감
수동 단위테스트 한계 극복 ‘단위 테스트 자동화 솔루션’ AgitarOne
고 비용의 수동 단위테스트를
자동화하여 비용 절감
AgitarOne은 Java개발자들이 class level에서 프로그래밍과 testing을 동시에 수행해야 하는 어려움을 가장 효율적으로
극복한 혁신적인 솔루션입니다.
32
AgitarOne 도입효과 (2/2)04
추가
테스트 케이스 / 데이터 자동 생성, 소스 코드 커버리지 지원, 200여 가지의 CodeRule을
지원해 줌으로써 버그 수정 및 재작업 시간을 혁신적으로 감소시켜 개발자로 하여금 더 많은
시간을 새로운 소스 코드 작성에 집중할 수 있도록 합니다.
단위 테스트의 일괄 작업을 손쉽게 수행할 수 있으며,소스 코드 변경 시 강력한 회귀
테스트 기능을 지원함으로써,개발자가 버그를 찾는데 주력하지 않고 더 높은 품질의
QA활동에 초점을 두고 일 할 수 있습니다.
어플리케이션의 문제점을 조기에 발견 및 조치 할 수 있으며,작성된 개발자의 소스 코드에
대한 정확한 제어가 가능하게 함으로써 개발자의 책임감을 부여하고 어플리케이션에 대한
품질을 확보할 수 있습니다.
개발자
QA담당자
프로젝트
관리자
33
AgitarOne 설치 권장사양 - Server05
추가
항목 내 용
CPU Intel® PentiumD 혹은 보다 위의 사양
Memory 4GB 이상
HDD 50G 이상
OS
 Window
• 32-bit Windows 2003 server, Vista, Windows 2008 server,Windows 7 or Windows 8
• 64-bit Windows 2003 server, Windows 2008 server, Windows 7, Windows 8, Windows Serv
er 2012
 RedHat
• 32-bit RedHat Enterprise Linux version 4, 5, 6 and 7
• 64-bit RedHat Enterprise Linux version 4, 5 and 6 and 7
 Linux
• the X-Windows libraries
• libXp.so.6, if using 64-bit Linux
 Mac OS
• 64-bit Mac OS X Snow Leopard (10.6)(Java runtime package가 설치되어있어야 함)
JDK
AgitarOne은 1.6.0_45 Sun JRE 기반 Apache Tomcat server를 지원합니다.
테스트케이스, TestData를 생성할 때 Sun JRE1.6 ~ 1.8, IBM JRE1.6 ~ 1.8를 지원하며 클라이언트 사용자
의 버전에 따라 사용됩니다.
Browser
Internet Explorer
Mozilla Firefox
Safari
34
AgitarOne 설치 권장사양 - Client05
추가
항목 내 용
CPU Intel P4 이상
Memory 1G 이상
HDD 450Mb의 설치공간
JDK
Sun JDK 1.6 ~ 1.8
IBM JDK 1.6 ~ 1.8
OS
 Window
• Windows 2003 server, Vista, Windows 2008 Server,
• Windows 2012 Server, Windows 7, Windows 8.
 RedHat
• 32-bit RedHat Enterprise Linux version 4, 5, 6, 7.
• 64-Bit RedHat Enterprise Linux version 4, 5, 6, 7.
 Mac
Mac OS X 10.6 (Snow Leopard)
IDE
Eclipse IDE 3.4 ~ 3.8, 4.4
RAD/RSA 7.0 ~ 9.0
JBuilder 2007, 2008
THANK YOU
㈜투비웨어 솔루션 사업부
 영업지원: 김학준 이사 02-6673-0061
 기술지원: 이수근 팀장 02-6673-0061
 http://www.tobeware.com

More Related Content

What's hot

[기본과정] 코드 테스트와 커버리지 기본 교육(개념)
[기본과정] 코드 테스트와 커버리지 기본 교육(개념)[기본과정] 코드 테스트와 커버리지 기본 교육(개념)
[기본과정] 코드 테스트와 커버리지 기본 교육(개념)SangIn Choung
 
발표자료 1인qa로살아남는6가지방법
발표자료 1인qa로살아남는6가지방법발표자료 1인qa로살아남는6가지방법
발표자료 1인qa로살아남는6가지방법SangIn Choung
 
[고급과정] 코드 테스트와 커버리지 교육(실습위주)
[고급과정] 코드 테스트와 커버리지 교육(실습위주)[고급과정] 코드 테스트와 커버리지 교육(실습위주)
[고급과정] 코드 테스트와 커버리지 교육(실습위주)SangIn Choung
 
테스트자동화와 TDD
테스트자동화와 TDD테스트자동화와 TDD
테스트자동화와 TDDSunghyouk Bae
 
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템강 민우
 
모바일 게임 테스트 자동화 Igc 2016
모바일 게임 테스트 자동화 Igc 2016모바일 게임 테스트 자동화 Igc 2016
모바일 게임 테스트 자동화 Igc 2016Jongwon Kim
 
모바일 앱(App) 개발 테스트 솔루션 v20160415
모바일 앱(App) 개발 테스트 솔루션 v20160415모바일 앱(App) 개발 테스트 솔루션 v20160415
모바일 앱(App) 개발 테스트 솔루션 v20160415SeungBeom Ha
 
위험기반테스트접근 테스트계획 사례
위험기반테스트접근 테스트계획 사례위험기반테스트접근 테스트계획 사례
위험기반테스트접근 테스트계획 사례SangIn Choung
 
UI 정적분석툴 소개와 활용사례
UI 정적분석툴 소개와 활용사례UI 정적분석툴 소개와 활용사례
UI 정적분석툴 소개와 활용사례SangIn Choung
 
모바일 자동화 솔루션 Touch Test 소개
모바일 자동화 솔루션 Touch Test 소개모바일 자동화 솔루션 Touch Test 소개
모바일 자동화 솔루션 Touch Test 소개진일 최
 
SDET 인력 양성을 위한 프로젝트 지원 사례 정리
SDET 인력 양성을 위한 프로젝트 지원 사례 정리SDET 인력 양성을 위한 프로젝트 지원 사례 정리
SDET 인력 양성을 위한 프로젝트 지원 사례 정리SangIn Choung
 
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)SangIn Choung
 
katalon studio 툴을 이용한 GUI 테스트 자동화 가이드
katalon studio 툴을 이용한 GUI 테스트 자동화 가이드katalon studio 툴을 이용한 GUI 테스트 자동화 가이드
katalon studio 툴을 이용한 GUI 테스트 자동화 가이드SangIn Choung
 
애자일 테스트 프랙티스와 사례들 (부제: 협업의 힘)
애자일 테스트 프랙티스와 사례들 (부제: 협업의 힘)애자일 테스트 프랙티스와 사례들 (부제: 협업의 힘)
애자일 테스트 프랙티스와 사례들 (부제: 협업의 힘)SangIn Choung
 
testing for agile?, agile for testing
testing for agile?, agile for testingtesting for agile?, agile for testing
testing for agile?, agile for testingSangIn Choung
 
오픈 스펙을 대상으로 한 테스트설계사례
오픈 스펙을 대상으로 한 테스트설계사례오픈 스펙을 대상으로 한 테스트설계사례
오픈 스펙을 대상으로 한 테스트설계사례SangIn Choung
 
단위테스트자동화지원도구 임성현 최종
단위테스트자동화지원도구 임성현 최종단위테스트자동화지원도구 임성현 최종
단위테스트자동화지원도구 임성현 최종guest7178884
 
(SW 아키텍트 대회 2차)단위테스트자동화도구
(SW 아키텍트 대회 2차)단위테스트자동화도구(SW 아키텍트 대회 2차)단위테스트자동화도구
(SW 아키텍트 대회 2차)단위테스트자동화도구Lim SungHyun
 
jacoco를 이용한 매뉴얼 테스트의 서버사이드 코드 커버리지 측정하기
jacoco를 이용한 매뉴얼 테스트의 서버사이드 코드 커버리지 측정하기jacoco를 이용한 매뉴얼 테스트의 서버사이드 코드 커버리지 측정하기
jacoco를 이용한 매뉴얼 테스트의 서버사이드 코드 커버리지 측정하기SangIn Choung
 
개발이 테스트를 만났을 때(Shift left testing)
개발이 테스트를 만났을 때(Shift left testing)개발이 테스트를 만났을 때(Shift left testing)
개발이 테스트를 만났을 때(Shift left testing)SangIn Choung
 

What's hot (20)

[기본과정] 코드 테스트와 커버리지 기본 교육(개념)
[기본과정] 코드 테스트와 커버리지 기본 교육(개념)[기본과정] 코드 테스트와 커버리지 기본 교육(개념)
[기본과정] 코드 테스트와 커버리지 기본 교육(개념)
 
발표자료 1인qa로살아남는6가지방법
발표자료 1인qa로살아남는6가지방법발표자료 1인qa로살아남는6가지방법
발표자료 1인qa로살아남는6가지방법
 
[고급과정] 코드 테스트와 커버리지 교육(실습위주)
[고급과정] 코드 테스트와 커버리지 교육(실습위주)[고급과정] 코드 테스트와 커버리지 교육(실습위주)
[고급과정] 코드 테스트와 커버리지 교육(실습위주)
 
테스트자동화와 TDD
테스트자동화와 TDD테스트자동화와 TDD
테스트자동화와 TDD
 
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
 
모바일 게임 테스트 자동화 Igc 2016
모바일 게임 테스트 자동화 Igc 2016모바일 게임 테스트 자동화 Igc 2016
모바일 게임 테스트 자동화 Igc 2016
 
모바일 앱(App) 개발 테스트 솔루션 v20160415
모바일 앱(App) 개발 테스트 솔루션 v20160415모바일 앱(App) 개발 테스트 솔루션 v20160415
모바일 앱(App) 개발 테스트 솔루션 v20160415
 
위험기반테스트접근 테스트계획 사례
위험기반테스트접근 테스트계획 사례위험기반테스트접근 테스트계획 사례
위험기반테스트접근 테스트계획 사례
 
UI 정적분석툴 소개와 활용사례
UI 정적분석툴 소개와 활용사례UI 정적분석툴 소개와 활용사례
UI 정적분석툴 소개와 활용사례
 
모바일 자동화 솔루션 Touch Test 소개
모바일 자동화 솔루션 Touch Test 소개모바일 자동화 솔루션 Touch Test 소개
모바일 자동화 솔루션 Touch Test 소개
 
SDET 인력 양성을 위한 프로젝트 지원 사례 정리
SDET 인력 양성을 위한 프로젝트 지원 사례 정리SDET 인력 양성을 위한 프로젝트 지원 사례 정리
SDET 인력 양성을 위한 프로젝트 지원 사례 정리
 
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
 
katalon studio 툴을 이용한 GUI 테스트 자동화 가이드
katalon studio 툴을 이용한 GUI 테스트 자동화 가이드katalon studio 툴을 이용한 GUI 테스트 자동화 가이드
katalon studio 툴을 이용한 GUI 테스트 자동화 가이드
 
애자일 테스트 프랙티스와 사례들 (부제: 협업의 힘)
애자일 테스트 프랙티스와 사례들 (부제: 협업의 힘)애자일 테스트 프랙티스와 사례들 (부제: 협업의 힘)
애자일 테스트 프랙티스와 사례들 (부제: 협업의 힘)
 
testing for agile?, agile for testing
testing for agile?, agile for testingtesting for agile?, agile for testing
testing for agile?, agile for testing
 
오픈 스펙을 대상으로 한 테스트설계사례
오픈 스펙을 대상으로 한 테스트설계사례오픈 스펙을 대상으로 한 테스트설계사례
오픈 스펙을 대상으로 한 테스트설계사례
 
단위테스트자동화지원도구 임성현 최종
단위테스트자동화지원도구 임성현 최종단위테스트자동화지원도구 임성현 최종
단위테스트자동화지원도구 임성현 최종
 
(SW 아키텍트 대회 2차)단위테스트자동화도구
(SW 아키텍트 대회 2차)단위테스트자동화도구(SW 아키텍트 대회 2차)단위테스트자동화도구
(SW 아키텍트 대회 2차)단위테스트자동화도구
 
jacoco를 이용한 매뉴얼 테스트의 서버사이드 코드 커버리지 측정하기
jacoco를 이용한 매뉴얼 테스트의 서버사이드 코드 커버리지 측정하기jacoco를 이용한 매뉴얼 테스트의 서버사이드 코드 커버리지 측정하기
jacoco를 이용한 매뉴얼 테스트의 서버사이드 코드 커버리지 측정하기
 
개발이 테스트를 만났을 때(Shift left testing)
개발이 테스트를 만났을 때(Shift left testing)개발이 테스트를 만났을 때(Shift left testing)
개발이 테스트를 만났을 때(Shift left testing)
 

Similar to 투비웨어 AgitarOne Junit 단위테스트자동화 솔루션소개_201608_v1.2

Tr#3 5) 임성현 책임
Tr#3 5) 임성현 책임Tr#3 5) 임성현 책임
Tr#3 5) 임성현 책임Lim SungHyun
 
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브Atlassian 대한민국
 
[오픈소스컨설팅]소프트웨어테스팅전략
[오픈소스컨설팅]소프트웨어테스팅전략[오픈소스컨설팅]소프트웨어테스팅전략
[오픈소스컨설팅]소프트웨어테스팅전략Ji-Woong Choi
 
回国去哪买毕业证办迪肯大学毕业证Deakin毕业证书【Q微202-661-4433】 Deakin售澳洲毕业证原版新毕业证书出售各国毕业证买澳洲毕业证的价...
回国去哪买毕业证办迪肯大学毕业证Deakin毕业证书【Q微202-661-4433】 Deakin售澳洲毕业证原版新毕业证书出售各国毕业证买澳洲毕业证的价...回国去哪买毕业证办迪肯大学毕业证Deakin毕业证书【Q微202-661-4433】 Deakin售澳洲毕业证原版新毕业证书出售各国毕业证买澳洲毕业证的价...
回国去哪买毕业证办迪肯大学毕业证Deakin毕业证书【Q微202-661-4433】 Deakin售澳洲毕业证原版新毕业证书出售各国毕业证买澳洲毕业证的价...asfasf4
 
테스트수행사례 W통합보안솔루션
테스트수행사례 W통합보안솔루션테스트수행사례 W통합보안솔루션
테스트수행사례 W통합보안솔루션SangIn Choung
 
Android Native Module 안정적으로 개발하기
Android Native Module 안정적으로 개발하기Android Native Module 안정적으로 개발하기
Android Native Module 안정적으로 개발하기hanbeom Park
 
TestExplorer 소개 - Android application GUI testing tool
TestExplorer 소개 - Android application GUI testing toolTestExplorer 소개 - Android application GUI testing tool
TestExplorer 소개 - Android application GUI testing toolhyunae lee
 
TestExplorer 소개 - Android application GUI testing tool
TestExplorer 소개 - Android application GUI testing toolTestExplorer 소개 - Android application GUI testing tool
TestExplorer 소개 - Android application GUI testing toolhyunae lee
 
01.개발환경 교육교재
01.개발환경 교육교재01.개발환경 교육교재
01.개발환경 교육교재Hankyo
 
포티파이 안전한 애플리케이션 구축 및 운영방안
포티파이 안전한 애플리케이션 구축 및 운영방안포티파이 안전한 애플리케이션 구축 및 운영방안
포티파이 안전한 애플리케이션 구축 및 운영방안TJ Seo
 
모바일 앱(App) 개발 테스트 솔루션 - 인터링크시스템
모바일 앱(App) 개발 테스트 솔루션 - 인터링크시스템모바일 앱(App) 개발 테스트 솔루션 - 인터링크시스템
모바일 앱(App) 개발 테스트 솔루션 - 인터링크시스템SeungBeom Ha
 
KGC 2014, 'Software Enginner in Test' in Game Development (Bluehole Studio)
KGC 2014, 'Software Enginner in Test' in Game Development (Bluehole Studio)KGC 2014, 'Software Enginner in Test' in Game Development (Bluehole Studio)
KGC 2014, 'Software Enginner in Test' in Game Development (Bluehole Studio)Sungmin Kim
 
VSTS와 Azure를 이용한 팀 프로세스 관리
VSTS와 Azure를 이용한 팀 프로세스 관리VSTS와 Azure를 이용한 팀 프로세스 관리
VSTS와 Azure를 이용한 팀 프로세스 관리Gyuwon Yi
 
SonarQube와 함께하는 소프트웨어 품질 세미나 - SonarQube 소개
SonarQube와 함께하는 소프트웨어 품질 세미나 - SonarQube 소개SonarQube와 함께하는 소프트웨어 품질 세미나 - SonarQube 소개
SonarQube와 함께하는 소프트웨어 품질 세미나 - SonarQube 소개CURVC Corp
 
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)SangIn Choung
 
[IMQA] performance consulting
[IMQA] performance consulting[IMQA] performance consulting
[IMQA] performance consultingIMQA
 
How Google Tests Software (구글의 소프트웨어 테스팅)
How Google Tests Software (구글의 소프트웨어 테스팅)How Google Tests Software (구글의 소프트웨어 테스팅)
How Google Tests Software (구글의 소프트웨어 테스팅)Ye Joo Park
 
효율적인 개발 프로세스를 위한 지속적 통합
효율적인 개발 프로세스를 위한 지속적 통합효율적인 개발 프로세스를 위한 지속적 통합
효율적인 개발 프로세스를 위한 지속적 통합홍렬 임
 
2015 SINVAS DAY - SINVAS TEST (테스트 자동화를 위한 전략과 구성 방안)
2015 SINVAS DAY - SINVAS TEST (테스트 자동화를 위한 전략과 구성 방안)2015 SINVAS DAY - SINVAS TEST (테스트 자동화를 위한 전략과 구성 방안)
2015 SINVAS DAY - SINVAS TEST (테스트 자동화를 위한 전략과 구성 방안)Suji Lee
 
[오픈소스컨설팅]소프트웨어 개발 준비 과정
[오픈소스컨설팅]소프트웨어 개발 준비 과정[오픈소스컨설팅]소프트웨어 개발 준비 과정
[오픈소스컨설팅]소프트웨어 개발 준비 과정Ji-Woong Choi
 

Similar to 투비웨어 AgitarOne Junit 단위테스트자동화 솔루션소개_201608_v1.2 (20)

Tr#3 5) 임성현 책임
Tr#3 5) 임성현 책임Tr#3 5) 임성현 책임
Tr#3 5) 임성현 책임
 
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
 
[오픈소스컨설팅]소프트웨어테스팅전략
[오픈소스컨설팅]소프트웨어테스팅전략[오픈소스컨설팅]소프트웨어테스팅전략
[오픈소스컨설팅]소프트웨어테스팅전략
 
回国去哪买毕业证办迪肯大学毕业证Deakin毕业证书【Q微202-661-4433】 Deakin售澳洲毕业证原版新毕业证书出售各国毕业证买澳洲毕业证的价...
回国去哪买毕业证办迪肯大学毕业证Deakin毕业证书【Q微202-661-4433】 Deakin售澳洲毕业证原版新毕业证书出售各国毕业证买澳洲毕业证的价...回国去哪买毕业证办迪肯大学毕业证Deakin毕业证书【Q微202-661-4433】 Deakin售澳洲毕业证原版新毕业证书出售各国毕业证买澳洲毕业证的价...
回国去哪买毕业证办迪肯大学毕业证Deakin毕业证书【Q微202-661-4433】 Deakin售澳洲毕业证原版新毕业证书出售各国毕业证买澳洲毕业证的价...
 
테스트수행사례 W통합보안솔루션
테스트수행사례 W통합보안솔루션테스트수행사례 W통합보안솔루션
테스트수행사례 W통합보안솔루션
 
Android Native Module 안정적으로 개발하기
Android Native Module 안정적으로 개발하기Android Native Module 안정적으로 개발하기
Android Native Module 안정적으로 개발하기
 
TestExplorer 소개 - Android application GUI testing tool
TestExplorer 소개 - Android application GUI testing toolTestExplorer 소개 - Android application GUI testing tool
TestExplorer 소개 - Android application GUI testing tool
 
TestExplorer 소개 - Android application GUI testing tool
TestExplorer 소개 - Android application GUI testing toolTestExplorer 소개 - Android application GUI testing tool
TestExplorer 소개 - Android application GUI testing tool
 
01.개발환경 교육교재
01.개발환경 교육교재01.개발환경 교육교재
01.개발환경 교육교재
 
포티파이 안전한 애플리케이션 구축 및 운영방안
포티파이 안전한 애플리케이션 구축 및 운영방안포티파이 안전한 애플리케이션 구축 및 운영방안
포티파이 안전한 애플리케이션 구축 및 운영방안
 
모바일 앱(App) 개발 테스트 솔루션 - 인터링크시스템
모바일 앱(App) 개발 테스트 솔루션 - 인터링크시스템모바일 앱(App) 개발 테스트 솔루션 - 인터링크시스템
모바일 앱(App) 개발 테스트 솔루션 - 인터링크시스템
 
KGC 2014, 'Software Enginner in Test' in Game Development (Bluehole Studio)
KGC 2014, 'Software Enginner in Test' in Game Development (Bluehole Studio)KGC 2014, 'Software Enginner in Test' in Game Development (Bluehole Studio)
KGC 2014, 'Software Enginner in Test' in Game Development (Bluehole Studio)
 
VSTS와 Azure를 이용한 팀 프로세스 관리
VSTS와 Azure를 이용한 팀 프로세스 관리VSTS와 Azure를 이용한 팀 프로세스 관리
VSTS와 Azure를 이용한 팀 프로세스 관리
 
SonarQube와 함께하는 소프트웨어 품질 세미나 - SonarQube 소개
SonarQube와 함께하는 소프트웨어 품질 세미나 - SonarQube 소개SonarQube와 함께하는 소프트웨어 품질 세미나 - SonarQube 소개
SonarQube와 함께하는 소프트웨어 품질 세미나 - SonarQube 소개
 
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
 
[IMQA] performance consulting
[IMQA] performance consulting[IMQA] performance consulting
[IMQA] performance consulting
 
How Google Tests Software (구글의 소프트웨어 테스팅)
How Google Tests Software (구글의 소프트웨어 테스팅)How Google Tests Software (구글의 소프트웨어 테스팅)
How Google Tests Software (구글의 소프트웨어 테스팅)
 
효율적인 개발 프로세스를 위한 지속적 통합
효율적인 개발 프로세스를 위한 지속적 통합효율적인 개발 프로세스를 위한 지속적 통합
효율적인 개발 프로세스를 위한 지속적 통합
 
2015 SINVAS DAY - SINVAS TEST (테스트 자동화를 위한 전략과 구성 방안)
2015 SINVAS DAY - SINVAS TEST (테스트 자동화를 위한 전략과 구성 방안)2015 SINVAS DAY - SINVAS TEST (테스트 자동화를 위한 전략과 구성 방안)
2015 SINVAS DAY - SINVAS TEST (테스트 자동화를 위한 전략과 구성 방안)
 
[오픈소스컨설팅]소프트웨어 개발 준비 과정
[오픈소스컨설팅]소프트웨어 개발 준비 과정[오픈소스컨설팅]소프트웨어 개발 준비 과정
[오픈소스컨설팅]소프트웨어 개발 준비 과정
 

투비웨어 AgitarOne Junit 단위테스트자동화 솔루션소개_201608_v1.2

  • 1. Junit 테스트 도구 AgitarOne Junit Generator 소개서 Code based test generation tools SW품질전문 기업 ㈜투비웨어 http://www.tobeware.com
  • 2. 2 ■ 제안사 소개 1/2 ㈜투비웨어는 다년간의 IT분야의 경험을 가진 기술인력으로 구성되어 있으며, IT Lifecycle 전반의 S/W 공급 및 시스템 품질 관리, 보안 영역에 필요한 솔루션과 컨설팅 서비스 공급을 사업 영역으로 수행하고 있습니다. 회 사 명 ㈜투비웨어 대 표 자 한경우 사 업 분 야 1. HP 솔루션(LoadRunner,QC,UFT) 2. SIOS 이중화 솔루션(SteelEye) 3. DB모니터링 솔루션(DB GURU) 4. 보안 솔루션(SolidStep, Vometric) 5. Java Unit 테스트 자동화 솔루션(AgitarOne) 6. 음성인식 텍스트 변환 솔루션(SYSTRNA STT) 주 소 경기도 성남시 분당구 운중로 129(963번지) 마크씨티 옐로우 601호 전 화 번 호 02-6673-0061 (Fax. 02-6673-0062) 회 사 설 립 년 도 2012년 8월 해 당 부 문 종 사 기 간 2012년 8월 ~ 2016년 현재 주요연혁  2012년 - ㈜투비웨어 설립 - KT 차세대 프로젝트 BIT 시스템 성능 최적화 컨설팅  2013년 - 동국제강그룹 ㈜DKUNC HP 소프트웨어 사업부 합병 - 농협, 기업은행 차세대 프로젝트 시스템 성능 최적화 컨설팅  2014년 - 대검찰청, 여성가족부, 행정안전부, 국민은행, 기업은행 S/W공급 및 시스템 성능 최적화 컨설팅  2015년 - 행자부, 자산관리 공사 S/W 공급 및 시스템 성능 컨설팅, SIOS S/W(SteelEye) 파트너 계약, 영상개선 제품 론칭,  2016년 - 대법원, 경남은행, 현대캐피탈, NH투자증권 S/W공급 및 시스템 성능 최적화 컨설팅
  • 3. 3 ■ 제안사 소개 2/2 ㈜투비웨어는 다년간의 IT분야의 경험을 가진 기술인력으로 구성되어 있으며, IT Lifecycle 전반의 S/W 공급 및 시스템 품질 관리, 보안 영역에 필요한 솔루션과 컨설팅 서비스 공급을 사업 영역으로 수행하고 있습니다. DB모니터링 및 시스템 튜닝 소프트웨어 보안 및 인증 이중화 고가용성 HA 및 복제 S/W 테스팅 및 품질관리 • DB GURU • Smart Tuning Management • ALM(어플리케이션 라이프사이클 관리) • Quality Center(테스트 공정관리) • QuickTest Professional(기능테스트 자동화) • LoadRunner(업계 표준 성능/부하 테스트) • TestOne Mobile(모바일 테스트 자동화) • McCabe IQ(소스코드 정적 분석도구) • AgitarOne(단위테스트 자동화) • Vometric • SolidStep • SIOS SteelEye 음성 텍스트 변환 •Systran STT •Systran LDK TestOne M VormetricSteelEye SolidStepMcCabe LoadRunner ALM/QC UFT/QTPSTTAgitarOne
  • 4. 4 AgitarOne 개요01 SoftwareAgitation • 테스트 데이터자동생성 Code Rules • 200여 가지 이상의 Coding Rule지원 DashBoard • Management Dashboard 지원 JUnitTest Generation • 단위테스트테스트케이스 자동생성 • 코드 커버리지지원 AgitarOne은 Java로 개발중인 Eclipse 프로젝트에 자동화된 단위 테스트의 환경을 제공하여 테스트 시간을 대폭 단축 시켜 개발 비용을 절감하게하며, 작성된 소스 코드들이 실질적으로 수행되는지 명확히 파악할 수 있도록 하여 소스 코드의 품질을 향상시켜 줄 수 있는 Java 개발자의 단위 테스트 자동화 솔루션입니다.
  • 5. 5 단위테스트 필요성 - 소프트웨어 품질과 결함01 0% 20% 40% 60% 80% Requirement & Design Coding & Unit test User Acceptance Test Production 백 결함 생성 주요 결함들은 요구사항 정의 및 설 계 단계에서 생성됨 0% 20% 40% 60% 80% Requirement & Design Coding & Unit test User Acceptance Test Production 백 결함 발견 반면 사용자 인수 테스트나 운영단으로 넘어간 이후에야 주요 결함들이 발견됨 결함 제거 비용 서비스 기획 개발 QA (기능) QA (성능) QC (Infra) QC (Apps) 운영 양산시제품 기능시험 (Functional Testing) 성능 시험 (Performance Testing) SMS/ NMS 서비스 감시 품질 관리(QC)품질 보증(QA) 변경/ 업그레이드 단위/ 시스템 시험 회귀시험 Production QA 운영개발/구축 테스트 프로세스 관리(Test Mgmt.) 좋은 품질 높은 성능 무장애무결함 단위시험 (Unit Testing)
  • 6. 6 단위테스트 필요성 – 지금까지의 테스트는...01 V-모델 방법론은 구축 및 테스트 프로세스의 모든 시점에서 고품질이 보장될 수 있도록 프로세스를 체계화 합니다. 지금 까지 진행했던 프로젝트에서 단위 테스트를 수행한 적이 있던가요? 단위 테스트가 수행되어 개발자의 프로그래밍 생산성이 높아진다면 품질 보증 부서의 업무 효율도 자연히 높아집니다. 시스템 설계 단위 테스트단위모듈설계 통합 테스트아키텍쳐 설계 시스템 테스트 요구사항 분석 프로그램 개발(코딩) 인수 테스트 분석 설계 단계 검증 확인 과정검증 (Verification) 결과 유효화 확인 (Validation) 요구사항검증 기능 및 외부연계 검증 성능/보안 검증 성능/보안 테스트 모듈 검증 기능흐름과 내부연계 검증 3자 검증(테스트) 대상범위 품질관리, PMO업무 대상범위 How did you work Unit Test ?
  • 7. 7 단위 테스트 자동화 솔루션 AgitarOne의 필요성01 Code 개발코드의복잡성 불충분한테스트  개발 담당자는 개발 이외의 테스트를 별도로 수행하는 업무에 대한 부담이큼  짧은 개발기간에 단위테스트를 위한 테스트 코드를 작성하는데 너무 많은 시간이 소요 (복잡한 프로그램일 수록 테스트 코드는 더많음)  소스코드의 잦은 변경으로 인한 테스트 소스코드를 다시 작성해야 함  테스트를 위한 수 많은 테스트 데이터 생성 및 실행이 현실상어려움  CodeRule에 입각한 코드 개발은 강제성을 띠지 않는 이상 지켜지기어려움  개발 담당자가 개발한 소스코드가 모두 실행 가능한 소스코드인 것인지에 대한 검증이어려움 Test
  • 8. 8 단위테스트 도구 JUnit과 AgitarOne의 차이점01 AgitarOne은 개발자의 수동 코딩에 대한 단위 테스트 노력을 절대적으로 줄여 줍니다. • JUnit Framework: Test Execution • AgitarOne: Test Generation(Action Code & Data) & Behavior Checking AgitarOne CodeJunit Code Class 와 Method에 대한 빈 테스트 코드 생성 테스트 코드 및 데이터 직접 생성 자동으로 테스트 코드와 데이터가 프로그램 로직 조건에 의해 자동 생성 & 결과 체크
  • 9. 9 AgitarOne 환경구성01 Master AgitarOne Server (Apache-tomcat) Client PC Client PC Client PC DashBoard 단위테스트 AgitarOne 관리자 페이지 AgitarOne은 Master Server와 Client PC 로 구성되며 Master Server에서는 각 Client PC 와의 통신을 통해 라이선스 및 각 Client 별 작업 현황, 계정관리, Plug-in 배포 등을 할 수 있으며, Client PC 에서는 단위테스트 실행 및 DashBoard를 통한 테스트 결과 등을 확인 할 수 있습니다. • Eclipse Client install 2분 Server Install 20분 초보자도 바로 사용가능
  • 10. 10 AgitarOne 솔루션구성01 Code Rules Enforcement Java Code Analysis Engine Management Dashboard AgitarOne JUnit Generator AgitarOne Agitator AgitarOne 은 테스트케이스를 생성하는 Junit Generator, 소스코드의 입•출력값을 검증해주는 Agitator, CodeRule 검증, 테스트 결과를 열람할 수 있는 DashBoard 등으로 구성 되어있습니다. - 손쉬운회귀테스트 - 코드의 복잡성감소 - 용이한유지보수 - 코드의 복잡성예방 - Deliver better code faster - Build for change
  • 11. 11 테스트 절차 1/2 Junit Generator (테스트 케이스 자동생성)02 소스코드 개발자 테스트 완료 테스트 케이스 자동생성 결과분석 소스 코드생성/수정 AgitarOne JUnit Test AgitarOne에서 소스코드를 분석하여 테스트 케이스를 자동 생성하여 테스트 결과를 분석하고 실행되지 않은 소스 코드의 라인을 수정 및 재테스트 함으로써 소스코드에 대한 신뢰성을 높일 수 있습니다. Better Tests Better Code JUnit Generation Software Agitation
  • 12. 12 테스트 절차 2/2 Agitator (테스트 데이터 자동생성)02 AgitarOne에서 소스코드를 분석하여 필요한 테스트 데이터를 자동생성 하여 생성된 테스트데이터의 Return 값을 확인 함으로서 쉽고 빠르게 오류를 찾아낼 수 있습니다. 소스코드 개발자 테스트 완료 테스트데이터 자동생성 결과분석 소스 코드생성/수정 AgitarOne Agitator Better Tests Better Code JUnit Generation Software Agitation
  • 13. 13 주요기능 - EclipsePlug-in제공03 AgitarOne의 Client 설치는 별도의 설치 프로그램 없이 Eclipse의 Software Updates를 통해 AgitarOne의 서버에 접속하여 프로그램을 설치하므로 AgitarOne 설치 프로그램 배포가 필요 없습니다.
  • 14. 14 주요기능 - JUnitGenerator(테스트케이스자동생성)03 AgitarOne의 Junit Generator는 개발자가 개발한 소스코드의 단위테스트를 위한 테스트케이스를 자동 생성해 줌으로써 테스트 기간 및 인력, 비용을 대폭 감소시켜 주며, 단위테스트 자동화는 어플리케이션에 대한 신뢰성을 높이고 품질 향상에 도움을 줍니다. 원본소스코 드 Agitar JUnit Generator를 통해 자동 생성된테스트 케이스
  • 15. 15 주요기능 - CodeCoverage 지원03 Junit Generator를 통하여 생성한 테스트 케이스를 실행하면 Code Coverage가 자동 측정되며 각 Method별 Coverage를 확인 할 수 있으며, Edit 창에서 컬러(연두색, 노란색, 빨간색)를 통하여 실행된 라인과 실행되지 않은 라인을 확인하여 라인이 실행 될 수 있도록 소스코드에 대한 신뢰성을 높일 수 있습니다. • 연두색 –모든 라인이 실행 되었음 • 빨간색 –모든 라인이 실행 되지 않았음
  • 16. 16 주요기능 - Agitator (테스트 데이터 자동생성)03 개발자가 개발한 소스코드에 대한 테스트 데이터를 자동 생성해 주며, 생성된 테스트 데이터의 Return값을 확인 할 수 있으며, Return값을 확인하여 소스코드의 안정성을 확인 할 수 있습니다.
  • 17. 17 주요기능 - Agitator (테스트 데이터 자동생성)03 테스트 데이터 생성시 테스트 데이터의 범위를 사용자가 지정하여 범위에 따른 다양한 테스트 데이터를 테스트 할 수 있으며, 테스트 데이터 생성에 많은 시간을 단축할 수 있습니다. -100 <= x <=100 소스코드의 입력값 범위를 사용자가 직접 지정할 수 있으며, 추가 또한 가능합니다. 수정 추가
  • 18. 18 주요기능 - Agitator (테스트 데이터 자동생성)03 Agitator는 예외처리 문이 필요로 하는 부분이 있을 경우를 알려줌으로써, 오류가 발생할 수 있는 부분을 명시하여 오류 발생을 예방 할 수 있습니다. 추가
  • 19. 19 주요기능 - Agitator (테스트 데이터 자동생성)03 테스트 데이터를 사용자가 변경하여 테스트 수행 시 변경 이력이 config 파일에 저장되며, “Revert” 기능을 이용하여 테스트 이전 단계로 복원 할 수 있습니다. 추가 테스트 데이터 변경이력 변경이력에 대한 Config 파일
  • 20. 20 주요기능 - CodeRule 지원03  소스코드에서 발생하기 쉬운 오류를 조기에 발견(잠재적 오류, 성능저하, 메모리 누수 등)하여 테스트 이전에 오류의 대부분을 발견하고 제거함으로써, 테스트 비용 및 시간을 절감하여 테스트의 생산성을 향상시킵니다.  AgitarOne은 200개 이상의 Coding Rule을 지원합니다. 추가 CodeRule 에 대한 테스트 결과를표시 CodeRule 상세정보
  • 21. 21 주요기능 - CodeRule 항목03  코드의 일관된 스타일을 유지 및 배포함으로써 소스코드의 가독성 향상 및 유지보수를 용이하게 합니다.  불필요한 코드를 제거하고 메모리 누수를 예방하여 성능저하를 예방합니다.  조기에 오류를 발견함으로써 프로젝트 비용 및 일정을 절감합니다. 추가 No Category Description 1 Coding Conventions Java 코딩 지침 2 Formatting Coding Style 관련규칙(들여쓰기, 라인길이 등등) 3 J2EE J2EE 기반의 어플리케이션의 Servlet과 EJB 관련 규칙(자원 해제 등) 4 JUnit 어플리케이션 테스트를 위한 Junit 관련규칙 5 Javadoc 클래스, 메소드, 패키지 등 주석에 대한 관련규칙 6 Metrics 소프트웨어의 복잡도 및 사이즈 등을 측정할 수있는 메트릭 7 Naming 클래스, 메소드, 변수 등의 Naming 규칙 8 Object Oriented Programming 객체지향 프로그래밍에 해당되는 기본규칙 9 Possible Bugs 잠재적인 에러가 발생할 수 있는 소스코드체크 10 Unused Code 미사용 변수 및 메소드 사용 금지규칙
  • 22. 22 주요기능 - Dashboard03 Management Dashboard는 단위 테스트, Agitation의 테스트 결과, 소프트웨어 프로젝트는 물론 그 프로젝트 안에 있는 개별적인 package, class, method들에 대한 전반적인 테스트 결과 정보들을 제공 합니다. 추가 높은 위험도의 코드 확인 가능
  • 23. 23 구성사례 (1/4)04 요구사항분석부터 설계를 거쳐 개발된 프로그램이 요구사항을 만족했는지 검증하는 단계와 단계별 테스트를 V-모델을 이 용해 관리 코딩 요구사항 분석 상위설계 상세설계 Acceptance Test System Test Integration Test Unit Test Unit Test 계획 Integration Test 계획 System Test 계획 Acceptance Test 계획 PMD, McCabe 테스트 시나리오,케이스 비즈니스 중심 요구사항 검증 요구사항 설계 상세설계 구현 인수테스트 시스템테스트 통합테스트 단위테스트 HPE LoadRunner AgitarOne 테스트 산출물 Jenkins, CVS, HPE Quality Center HPE UFT(UI 자동화) 각종 산출물로 관리 V-모델 구성환경
  • 24. 24 구성사례 (2/4)04 소스코드의 테스트 자동화를 위해 개발/운영환경과 연계하여 프로젝트관리 및 CI환경을 구성함. 요구사항, 이슈, 오류 등 을 등록하고 관리할 수 있으며 CI환경을 통해 자동테스트를 수행 고객사 PM / QA 개발사 CI서버 요구사항 및 개발 요구사항 도출 Redmine (요구사항등록 및 진척도관리) 요구사항준수율 100% 개발진행 개발 진행 파악 Roadmap (요구사항 달성도 판단) CVS (형상관리) ANT (통합빌드) PMD (코딩표준) AgitarOne (단위 및 통합테스트) 개발 및 테스트 품질 현황 분석 Jenkis (CI 및 품질관리) 인수 McCabe (소스코드 진척 확인, 복잡도, Code Coverage ) Release (완료 및 인수시 점 판단)) 프로젝트관리 인수 빌드성공율 100% 단위테스트성공율 100% 검출건수 High 0건 이하 N, L 250건 이하 커버리지 60% 복잡도30이상 1% 이하
  • 25. 25 구성사례 (3/4)04 요구사항에 대한 요구사항추적 매트릭스, 개발단계의 관리를 위한 개발진척관리, 단위테스트(AgitarOne)와 통합 테스트를 수행 분석/설계 개발 테스트 요 구 사 항 추 적 메 트 릭 스 개 발 진 척 관 리 단위테스트 결과보고 (테스트케이스정의서) 통합테스트 결과보고 (통합테스트시나리오) 시스템테스트 결과보고 (시스템테스트설계) 단위프로그램관리 요 구 사 항 정 의 프로그램 설계 DB 설계 화면(UI)설계 소스코드 (Java, SQL) UI프로그램 (JSP) White Box Test Black Box Test 요 구 사 항 I D 프 로 그 램 명 테 이 블 명 화 면 I D 프 로 그 램 I D 프 로 그 램 작 성 현 황 일 일 집 계 Test Case ID, 개발소스명 RFP, 제안서, 사업수행계획서, 인터뷰 요 구 사 항 추 출 단위테스트 (JenLins, AgitarOne) 통합테스트 (Manual) 시스템테스트 (LoadRunner) 주 요 산 출 물
  • 26. 26 구성사례 (4/4)04 사업초기 품질측정지표 및 지표측정방안을 수립하고 품질목표를 달성하도록 품질관리 수행 측정지표 지표설명 달성목표 지표 측정방안 달성여부 요구사항 준수율 등록(Redmine)된 전체 일감 (기능요구사 항) 대비 완료된 일감의 비율 100% Redmine의 로드맵에서 각 버 전별 진척율로 측정 ● 빌드 안정성 1Day/1Build 룰 적용, 5일간 빌드가 성공 한 횟수 100% CI서버의 Build History에서 Build Stability로 측정 ● 단위 테스트 성공률 AgitarOne을 통해 단위테스트를 실행하여 전 체 테스트 대비 성공한 테스트 비율 100% AgitarOne 대쉬보드 Test Result 로 측정 ● 코드 인스펙션 PMD에 의해 검출된 건수에 대해 Health Thresh olds 구간을 설정하여 측정 Low, Normal 200건 이 하 High priority 0 건 CI서버의 Build History에서 PMD 로 측정 ● 코드 복잡도 McCabe(Complexity)에서 전체 코드 라인 대 비 검출 건의 비율로 측정 over30 1% 이하 McCabe 대쉬보드 Result로 측정 ● 코드 커버리지 McCabe를 통해 Class, Method, Block, Line, Decision/Conditiom의 코드 커버리지 측정 Class Coverage 70% McCabe 대쉬보드 Result로 측정 ●
  • 27. 27 활용방안 (1/4)04 AgitarOne 단위테스트 자동화 도구는 Waterfall, Agile 방식등의 개발단계에서 개발자의 단위테스트 지원 부터, QA매니저의 품질진단 및 통합테스트에서 운영 시 까지 프로그램 변경에 따른 회귀테스트 자동화 지원으로 품질의 유지 및 개선프로세스에 활용 됩니다. 개발/단위테스트 통합테스트 시스템테스트 운영/Field 품질개선 프로세스 품질진단 프로세스 품질유지 프로세스 준비 및 작업
  • 28. 28 활용방안 (2/4) – 품질개선 프로세스04 코딩/단위테스트 단계의 품질을 향상 시켜줍니다. 버그 수정 및 변경에 용이하도록 가독성 높은 코드를 유지할 수 있도록 지원 합니다. 코딩 단계 이후 부터 지속 활용을 권장합니다. 개발자 시작 코딩 자동테스트 종료 Fail 자동테스트 결과확인 테스트결과 관리 프로세스 Pass 품질개선 프로세스
  • 29. 29 활용방안 (3/4) – 품질유지 프로세스04 개발자는 QA팀 또는 테스터로 부터 받은 보고서를 검토하여 결함여부를 파악하고 결함 시 코드 수정 및 자동화테스트를 수행합니다. 결함으로 판단되지 않을 경우도 자동화테스트를 수행 후 종료 처리 합니다. 버그수정 및 S/W Degrade예방과 테스트 재작업 공수를 줄여주어 통합테스트 단계 이후도 지속 권장 합니다. 개발자 시작 종료 결함확인 및 리뷰 코드수정 자동화테스 트 수행 보고서 검토 Fail Pass 자동화테스트 실행 Fail Pass 품질유지 프로세스
  • 30. 30 활용방안 (4/4) – 품질진단 프로세스04 QA담당자는 개발팀에서 생산한 코드의 매뉴얼적인 코드와 보고서 Inspection 외에도 단위테스트 결과를 진단할 수 있습 니다. 프로젝트의 현황을 파악할 수 있고 위험에 대한 사전대처가 가능해 집니다. AgitarOne을 활용한 품질 진단은 코딩 단계 이후에도 계속 활용될 수 있습니다. QA담당 시작 보고서 생성 테스트결과서 보고서 검토 개발자 피드백 종료 품질진단 프로세스
  • 31. 31 AgitarOne 도입효과 (1/2)04 가시적이지 않았던 소스코드 단 위테스트 수행 및 커버리지 확인 시각화 CodeRule지원 소스코드 오 류 조기 발견 회귀테스트 수행 Degrade 조 기대처로 S/W 품질 유지 개발 지원 품질 향상 비용 절감 수동 단위테스트 한계 극복 ‘단위 테스트 자동화 솔루션’ AgitarOne 고 비용의 수동 단위테스트를 자동화하여 비용 절감 AgitarOne은 Java개발자들이 class level에서 프로그래밍과 testing을 동시에 수행해야 하는 어려움을 가장 효율적으로 극복한 혁신적인 솔루션입니다.
  • 32. 32 AgitarOne 도입효과 (2/2)04 추가 테스트 케이스 / 데이터 자동 생성, 소스 코드 커버리지 지원, 200여 가지의 CodeRule을 지원해 줌으로써 버그 수정 및 재작업 시간을 혁신적으로 감소시켜 개발자로 하여금 더 많은 시간을 새로운 소스 코드 작성에 집중할 수 있도록 합니다. 단위 테스트의 일괄 작업을 손쉽게 수행할 수 있으며,소스 코드 변경 시 강력한 회귀 테스트 기능을 지원함으로써,개발자가 버그를 찾는데 주력하지 않고 더 높은 품질의 QA활동에 초점을 두고 일 할 수 있습니다. 어플리케이션의 문제점을 조기에 발견 및 조치 할 수 있으며,작성된 개발자의 소스 코드에 대한 정확한 제어가 가능하게 함으로써 개발자의 책임감을 부여하고 어플리케이션에 대한 품질을 확보할 수 있습니다. 개발자 QA담당자 프로젝트 관리자
  • 33. 33 AgitarOne 설치 권장사양 - Server05 추가 항목 내 용 CPU Intel® PentiumD 혹은 보다 위의 사양 Memory 4GB 이상 HDD 50G 이상 OS  Window • 32-bit Windows 2003 server, Vista, Windows 2008 server,Windows 7 or Windows 8 • 64-bit Windows 2003 server, Windows 2008 server, Windows 7, Windows 8, Windows Serv er 2012  RedHat • 32-bit RedHat Enterprise Linux version 4, 5, 6 and 7 • 64-bit RedHat Enterprise Linux version 4, 5 and 6 and 7  Linux • the X-Windows libraries • libXp.so.6, if using 64-bit Linux  Mac OS • 64-bit Mac OS X Snow Leopard (10.6)(Java runtime package가 설치되어있어야 함) JDK AgitarOne은 1.6.0_45 Sun JRE 기반 Apache Tomcat server를 지원합니다. 테스트케이스, TestData를 생성할 때 Sun JRE1.6 ~ 1.8, IBM JRE1.6 ~ 1.8를 지원하며 클라이언트 사용자 의 버전에 따라 사용됩니다. Browser Internet Explorer Mozilla Firefox Safari
  • 34. 34 AgitarOne 설치 권장사양 - Client05 추가 항목 내 용 CPU Intel P4 이상 Memory 1G 이상 HDD 450Mb의 설치공간 JDK Sun JDK 1.6 ~ 1.8 IBM JDK 1.6 ~ 1.8 OS  Window • Windows 2003 server, Vista, Windows 2008 Server, • Windows 2012 Server, Windows 7, Windows 8.  RedHat • 32-bit RedHat Enterprise Linux version 4, 5, 6, 7. • 64-Bit RedHat Enterprise Linux version 4, 5, 6, 7.  Mac Mac OS X 10.6 (Snow Leopard) IDE Eclipse IDE 3.4 ~ 3.8, 4.4 RAD/RSA 7.0 ~ 9.0 JBuilder 2007, 2008
  • 35. THANK YOU ㈜투비웨어 솔루션 사업부  영업지원: 김학준 이사 02-6673-0061  기술지원: 이수근 팀장 02-6673-0061  http://www.tobeware.com