슬라이드 1

Similar documents
슬라이드 1

소프트웨어 검증 및 설계

PowerPoint 프레젠테이션

PowerPoint Presentation

슬라이드 1

슬라이드 1

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

Introduction to CTIP

슬라이드 1

PowerPoint Presentation

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

슬라이드 1

서현수

12 성능모니터링 allmon Apache License v 성능모니터링 nmon GPL v3 분산되어있는시스템에대한자원상태체크, 사용현황, 성능등을수집

Apache Ivy

문서의 제목 나눔고딕B, 54pt

파워포인트

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

표준프레임워크 Nexus 및 CI 환경구축가이드 Version 3.8 Page 1

파워포인트

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

CONTENTS SUMMARY PART 1 MARKET MARKET STRATEGY MARKET ISSUE MARKET ISSUE PART 2 CREDIT CREDIT ISSUE CREDIT ISSUE CREDIT ISSUE CREDIT ISSUE CREDIT STRA

4S 1차년도 평가 발표자료

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

<FEFF E002D B E E FC816B CBDFC1B558B202E6559E830EB C28D9>

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx

1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot)

PowerPoint 프레젠테이션

Angry MOMO Presentation

쿠폰형_상품소개서

第 1 節 組 織 11 第 1 章 檢 察 의 組 織 人 事 制 度 등 第 1 項 大 檢 察 廳 第 1 節 組 대검찰청은 대법원에 대응하여 수도인 서울에 위치 한다(검찰청법 제2조,제3조,대검찰청의 위치와 각급 검찰청의명칭및위치에관한규정 제2조). 대검찰청에 검찰총장,대

품질검증분야공개 SW 솔루션목록 ( ) 순번분류솔루션명라이선스기술지원홈페이지제품개요 1 BTS Bugzilla MPL community 웹기반의 bug tracking 및테스트도구 2 BTS Fossil 2-c

Contents Contents 2 1 Abstract 3 2 Infer Checkers Eradicate Infer....

슬라이드 1

품질검증분야 Stack 통합 Test 결과보고서 [ The Bug Genie ]

블로그_별책부록

170

006- 5¿ùc03ÖÁ¾T300çÃâ

Microsoft Word - Armjtag_문서1.doc

Dialog Box 실행파일을 Web에 포함시키는 방법

텀블러514

PowerPoint 프레젠테이션


자식농사웹완

chungo_story_2013.pdf

*중1부

2

Çѱ¹ÀÇ ¼º°øº¥Ã³µµÅ¥

...._


전반부-pdf

표1.4출력

003-p.ps

<4D F736F F F696E74202D20312E20B0E6C1A6C0FCB8C15F3136B3E2C7CFB9DDB1E25F325FC6ED28C0BA292E >

_

12월월간보고서내지편집3

중앙도서관소식지겨울내지33

에너지포커스 2007년 가을호


01_당선자공약_서울

인권문예대회_작품집4-2




목차

A°ø¸ðÀü ³»Áö1-¼öÁ¤

±¹³»°æÁ¦ º¹»ç1

¿¡³ÊÁö ÀÚ¿ø-Âü°í ³»Áö.PDF

전반부-pdf

뉴스레터6호

Microsoft PowerPoint 하반기 크레딧 전망_V3.pptx

50차 본문 최종

양성내지b72뼈訪?303逞

³»Áöc03âš

fsb9¿ù³»ÁöÃÖÁ¾Ãâ

¾ç¼º-¾÷¹«Æí¶÷-³»¿ëÃà¼Ò4

전도대회자료집


< DBAB4B9ABC3BB5FBAB9B9ABB0FCB8AEB8C5B4BABEF32D33B1C72E706466>

표1~4

<3344C7C1B8B0C6C320BFE4BEE02D E706466>

µ¶ÀÏÅëÀÏÁý1~2Æíq36£02Ð



untitled

Introduction to Junit, Eclipse, Build Environment

<49534F C0CEC1F520BBE7C8C4BDC9BBE720C4C1BCB3C6C320B9D D20BDC3BDBAC5DB20B0EDB5B5C8AD20C1A6BEC8BFE4C3BBBCAD2E687770>

Microsoft Word - src.doc

1. What is AX1 AX1 Program은 WIZnet 사의 Hardwired TCP/IP Chip인 iinchip 들의성능평가및 Test를위해제작된 Windows 기반의 PC Program이다. AX1은 Internet을통해 iinchip Evaluation

Data Sync Manager(DSM) Example Guide Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager

PowerPoint 프레젠테이션

1. Eclipse 2. JUnit 3. STATIC ANALYSIS 4. PMD 5. Eclipse TPTP 6. FIND BUGS INDEX 2

Orcad Capture 9.x

³»Áö¼öÁ¤

Install stm32cubemx and st-link utility

목 차

Software Verification Team 오준 임국현 주영진 김슬기

기존에 Windchill Program 이 설치된 Home Directory 를 선택해준다. 프로그램설치후설치내역을확인해보면 Adobe Acrobat 6.0 Support 내역을확인할수 있다.

Transcription:

Software Verification #3 정적분석도구, 단위 / 시스템테스트도구 Software Verification Team 4 강 정 모 송 상 연 신 승 화 1

Software Verification #3 정적분석도구, 단위 / 시스템테스트도구 CONTENTS 01 Overall Structure 02 Static analyzer SonarQube 03 Static analyzer PMD 04 Static analyzer Checkstyle 05 Static analyzer FindBugs 06 Summary 2

01 Overall structure IDE (IntelliJ) CI Server (Jenkins) 3

01 Overall structure Ⅰ. Jenkins Redmine 연동문제 plugin 노후화 / gem version 충돌문제급한대로바로가기를통한연결. 해결될가능성은낮지만고민해봐야할문제. (Redmine version 4.0.3 3.x.x 로 downgrade??) Ⅱ. Jenkins Mantis 연동문제 추후해결이안될시 GitHub or TestLink Mantis 대체연동을고려 4

01 Overall structure Ⅰ. Jenkins Redmine 연동문제 zapier webhook 으로해결. 하지만아직일감분류문제해결이필요. 5

01 Overall structure Ⅱ. Jenkins Mantis 연동문제 TestLink Mantis 대체연동시 TestLink Redmine 연동이불가 정적분석툴추가 삭제 대체제로 testcase 설치예정 ( 현재 DB 설정충돌문제발생 ) 6

02 Static Analyzer - SonarQube 조직에서개발된코드의지속적인인스펙션을통해품질목표를달성할수있게해주는플랫폼 소스코드품질현황을시각화, 리스크분석및소스코드에서발생하는문제를해결 7

02 Static Analyzer - SonarQube SonarQube 의경우기본 DB 로 maven 의 H2DB 를사용하므로, maven 을먼저설치해준다. ( 필요시다른 DB 로대체가능. 설치후환경변수등록할것.) 8

02 Static Analyzer - SonarQube SonarQube 최신버전을다운로드하여압축을해제하고, bin directory 내부의 linux directory 중해당 OS 에맞는 directory 에들어가 sonar.sh 파일을실행시킨다. 9

02 Static Analyzer - SonarQube 해당 SonarQube 의 default port 번호는 9000 이므로, server DNS 뒤에 :9000 port 번호를입력하여 SonarQube 에접속한다. 10

02 Static Analyzer - SonarQube Jenkins 와연동하기위해 SonarQube Scanner Plugin 과 Sonar scanner 를설치한다. 11

02 Static Analyzer - SonarQube SonarQube Token 생성후 해당 Token 과 SonarQube server 주소를이용하여 Jenkins 에 SonarQube server 등록한다. 12

02 Static Analyzer - SonarQube 설치한 Sonar Scanner 를 Jenkins 와연동시켜준다. 13

02 Static Analyzer - SonarQube SonarQube 와연동하기위한 Jenkins project 로이동하여 빌드환경을설정한다. 14

02 Static Analyzer - SonarQube SonarQube 와연동하기위한 Jenkins project 로이동하여 빌드환경을설정한다. Jenkins 와 JDK 가연동되어있어야함 SonarQube 에서생성될 project 이름과해당 project 의 key 값 Workspace 이후의 directory 부터입력해야함 15

02 Static Analyzer - SonarQube 실행 16

03 Static Analyzer - PMD PMD(Program May Dependable) 미사용변수, 비어있는코드 block, 불필요한 object 생성과같이 defect을유발할수있는코드를검사한다. 미리정의한 ruleset을기반으로구문을분석한다. Java에서많이사용하지만, JavaScript, XML 등다른언어도지원한다. 17

03 Static Analyzer - PMD 사용할 ruleset 을선택하여 pmd-rule-set.xml 생성 ( 아래는생성한 xml 파일의일부 ) https://github.com/jensgerdes/sonar-pmd/blob/master/docs/rules.md > PMD ruleset reference 18

03 Static Analyzer - PMD SonarQube 의 Market Place 에서 PMD plugin 을검색하여추가하고, Quality Profiles tab 에서 Create 를통해 ruleset 을모은 New Profile 을만든다. 이전슬라이드에서 ruleset 을사용해서만들어낸 xml 파일 19

03 Static Analyzer - PMD 다음과같이 Quality Profile 항목에 PMD ruleset 을활용한 SoftwareVerification Profile 이 import 된것을볼수있다. 20

04 Static Analyzer Checkstyle 소스코드내에서다양한위반사항에대해알수있다. 개발자들이체크인전에위반사항을고칠수있다. 미리정해놓은코딩규칙을팀원들이보다쉽게적용할수있게도와주는도구 error를조기에찾을수있음. ex) 사용하지않은 pointer는 Null로초기화한다. 21

04 Static Analyzer Checkstyle PMD 와마찬가지로 Market Place 에서 Checkstyle Plugin 을찾아설치한다. 설치시 Rules Repository 에 Checkstyle Java 항목이추가된다. 22

05 Static Analyzer FindBugs Java program에서잠재적으로발생가능한버그를찾는것이주목적인정적분석 tool. Complie된 java byte code를읽어서검사 속도가빠름, 하지만 build 과정이필수 (SonarQube에서는해당 option 선택가능 ) 실제결함 / 버그를잘찾아주는편이다. (static analysis에서발생가능한 false alarm이존재할수있음 ) 23

05 Static Analyzer FindBugs 역시 FindBugs 도 Market Place 에서 FindBugs Plugin 을찾아설치한다. 설치시 Rules Repository 에각종 FindBugs Java 항목이추가된다. 24

05 Static Analyzer FindBugs Quality Profile 쪽에도 Rules 들이추가된다. 25

06 Summary Quality Profile 탭우측상단의 Create 를눌러 Profile 을만든다. 26

06 Summary 생성한 Profile을선택한후 Change Project로 SonarQube project를할당할수있고, 할당이후에는 Activate More 을클릭하여각종 rule을마음대로추가할수있다. 27

06 Summary Server_1 Local Code Push Hosting Build Server_2 Build Test Repository Synchronization Webhook config Plugin Plugin 28

감사합니다 THANK YOU Software Verification Team 4 강 정 모 송 상 연 신 승 화 29