ppt.glzy8.com提供海量PPT模板免费下载!

Similar documents
JUNIT 실습및발표

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

Design Issues

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

JAVA PROGRAMMING 실습 08.다형성

PowerPoint Presentation

PowerPoint Presentation

PowerPoint Presentation

Spring Boot

슬라이드 1

PowerPoint Presentation

1. 도구개요 JUnit Testing 소개 JUnit 은 Java 기반테스팅을위한프레임워크로, 단위모듈 (ex: Method) 이정확히구현되었는지를확인할수있는도구 주요기능 Test case 생성및실행, 오류추적 카테고리 Testing 세부카테고리테스트설계및실행 커버리

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

슬라이드 1

Interstage5 SOAP서비스 설정 가이드

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

Microsoft PowerPoint - Java7.pptx

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

rmi_박준용_final.PDF

PowerPoint Presentation

02 C h a p t e r Java

PowerPoint Presentation

PowerPoint 프레젠테이션

소프트웨어공학개론 Tutorial #2: Junit Eun Man Choi

JUnit & Eclipse

PowerPoint 프레젠테이션

05-class.key

2 JUnit 이필요한이유 기졲의테스트방식 클래스에서테스트최소단위는메소드이며어떤것이유효한지를찾으려면하나씩테스트해야함테스트구현하는과정에서한번의단일테스트가실패할경우, 후속테스트가전혀수행되지않아전체적인테스트가불가능테스트를자동으로시작해주는프레임워크가없어각테스트를시작하기위해서는

비긴쿡-자바 00앞부속

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

슬라이드 1

제11장 프로세스와 쓰레드

Microsoft PowerPoint - 2강

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

gnu-lee-oop-kor-lec06-3-chap7

PowerPoint Presentation

슬라이드 1

example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for

슬라이드 1

Microsoft PowerPoint - jfeature장범석서재원박동현.pptm

문서의 제목 나눔명조R, 40pt

Spring Data JPA Many To Many 양방향 관계 예제

JAVA PROGRAMMING 실습 09. 예외처리

예제 2) Test.java class A intvar= 10; void method() class B extends A intvar= 20; 1"); void method() 2"); void method1() public class Test 3"); args) A

DE1-SoC Board

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

@OneToOne(cascade = = "addr_id") private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a

파워포인트

PowerPoint 프레젠테이션

자바 프로그래밍

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

Spring Boot/JDBC JdbcTemplate/CRUD 예제

쉽게

오버라이딩 (Overriding)

1. 도구개요 CppUnit Testing 소개 CppUnit 는 C++ 용 testing Framework 로 Java 의 JUnit 을 C++ 로구현 C++ 언어에서사용할수있도록개발된 Open Source 프로젝트로, source code 의특정 Module 이의도

JAVA PROGRAMMING 실습 05. 객체의 활용

09-interface.key

슬라이드 1

Microsoft PowerPoint - ÀÚ¹Ù08Àå-1.ppt

class Sale void makelineitem(productspecification* spec, int qty) SalesLineItem* sl = new SalesLineItem(spec, qty); ; 2. 아래의액티비티다이어그램을보고 Java 또는 C ++,

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

fundamentalOfCommandPattern_calmglow_pattern_jstorm_1.0_f…

Secure Programming Lecture1 : Introduction

Cluster management software

PowerPoint 프레젠테이션

[ 그림 8-1] XML 을이용한옵션메뉴설정방법 <menu> <item 항목ID" android:title=" 항목제목 "/> </menu> public boolean oncreateoptionsmenu(menu menu) { getme

5장.key

Microsoft PowerPoint - 14주차 강의자료

gnu-lee-oop-kor-lec10-1-chap10

쉽게 풀어쓴 C 프로그래밍

을풀면된다. 2. JDK 설치 JDK 는 Sun Developer Network 의 Java( 혹은 에서 Download > JavaSE 에서 JDK 6 Update xx 를선택하면설치파일을

Microsoft PowerPoint - 04-UDP Programming.ppt

PowerPoint 프레젠테이션

PowerPoint Presentation

JAVA PROGRAMMING 실습 02. 표준 입출력

슬라이드 1

PowerPoint 프레젠테이션

Microsoft PowerPoint - CSharp-10-예외처리

(Microsoft PowerPoint - java1-lecture11.ppt [\310\243\310\257 \270\360\265\345])

PowerPoint Template

소프트웨어공학 Tutorial #2: StarUML Eun Man Choi

PowerPoint Presentation

Microsoft PowerPoint 자바-기본문법(Ch2).pptx

- JPA를사용하는경우의스프링설정파일에다음을기술한다. <bean id="entitymanagerfactory" class="org.springframework.orm.jpa.localentitymanagerfactorybean" p:persistenceunitname=

Network Programming

PowerPoint 프레젠테이션

PowerPoint Presentation

PowerPoint 프레젠테이션

12-file.key

07 자바의 다양한 클래스.key

untitled


Introduction to CTIP

백서2011표지

( )부록

PowerPoint 프레젠테이션

블로그_별책부록

JVM 메모리구조

Transcription:

ppt.glzy8.com 海量 PPT 模板免费下载 소프트웨어검증발표 #1 junit, Eclipse, 정적분석도구 T5 201013759 근량 201013760 기세파

contents 1 2 3 4 JUnit Eclipse jdepend colver

JUnit 이란? Junit 는가장많이사용되는 Java 단위테스트프레임워크. 콘솔환경에서명령행으로도실행가능. Eclipse 에는기본도구로되어있음. wikipedia LOGO

Junit 의필요한예 예 1 제가만든각종연산하는프로그램이있습니다. 문제는이상은없는것같은데결과가이상합니다. 그래서테스트를시작합니다. 덧셈부분이잘못됬다고치고, 일단차례대로메소드들은테스트할것입니다. 그런데잘못된덧셈을하기전각각의메소드들을모두테스트해야하고잘못된선택으로취소가됬다면다시처음부터테스트를해야합니다. 예 2 DB 와관련된클래스입니다. 임시적으로테스트를위해 DB 접속을위한암호를넣고테스트후남겨뒀다고하면, 이정보는심각한보안상문제를일으킬수있습니다.

JUnit 의장점 메소드정확히구현되었는지를확인 원하는모듈만순서대로테스트가능 단위테스팅으로통합테스트시의회귀결함을감소 단위테스팅으로통해코드품질을보장 添加内容 添加内容

Junit 사용예 Eclipse 에서는 JUnit 을기본적으로사용.

Test building JUnit 3 와 4 를선택 Source code 경로 Test Fixture

Main class public class Calcuator { public double add(double n1, double n2) { 더하기연산자 return n1 + n2; // Integer Return Method } }

test1 import junit.framework.testcase; public class TestCalcuator extends TestCase { public void testadd(){ Calcuator calcuator=new Calcuator(); double result=calcuator.add(1,2); assertequals(3,result,0); // 기대값 (expected) 과실제값 (actual) 이같은지비교 assertequals 를이용한테스팅성공시초록색으로표시 } }

test2 import junit.framework.testcase; public class TestCalcuator2 extends TestCase { public void testadd(){ Calcuator calcuator=new Calcuator(); double result=calcuator.add(1,2); assertequals(5,result,0); // 기대값 (expected) 과실제값 (actual) 이같은지비교 } } assertequals 로테스팅실패시빨간색으로나타내고해당 Unit 표시.

All test import junit.framework.testsuite; import junit.framework.test; import junit.textui.testrunner; public class TestAll extends TestSuite { public static Test suite() { TestSuite suite = new TestSuite("TestSuite Test"); suite.addtestsuite(testcalcuator.class); suite.addtestsuite(testcalcuator2.class); return suite; } public static void main(string args[]){ TestRunner.run(suite()); } addtestsuite 테스트클래스추가 ( 클래스명.class ) 여러개의 Test 클래스들을모아실행할때쓰인다.

@Before Test method 가실행되기전에실행되는 method @Before Class Test 를시작하기전에한번만실행한다. @After Test method 가실행되고난후에실행되는 method @After Class Test 를마친후에한번만실행한다 @Test Test 를실행할 method 앞에붙임 expected 발생할것으로예상되는예외를지정. 예외가생기지않으면실패. timeout 테스트가끝나는시간을예측. 시간보다길게끝나면실패. @Ignore 테스트실행주석 테스트를하지않을 method 앞에붙임

Eclipse 자바로작성된자유소프트웨어 (EPL License) 다양한언어를지원하는통합 다운로드 http://www.eclipse.org/downloads/index.php 에서다운받은후설치

Eclipse 초기화면

Project 생성

Class 생성

Eclipse - 실행

JDepend 패키지의존성과설계품질의객체지향식측정을통해, 패키지를분석하고관리할수있도록지원해주는도구.

특징 패키지별로의존성측정가능 jdepend 패키지의존성과관련된데이터품질을수치화하여표현 수치화된의존성정보를텍스트형태로제공 LOGO 수치화된데이터품질을그래프로표현

설치방법 step1: Help -> Install New Software 44

설치방법 step2 : Add 클릭 Location : http://andrei.gmxhome.de/eclipse/

설치방법 step3: name 중의 ecilpse 3.6-4.3 plugins 체크 Next 버튼을클릭.

설치방법 step4: 이어서 next finish 버튼을클릭아래화면이나옵니다.

설치방법 step5: 원하는패키지에다가 Run Jdepend analysis 를클릭.

Packages Metrics Dependencies

Packages 패키지의존성정보를확인할수있음

Dependencies View 선택한패키지의의존성정보를수치화하여표현

Dependencies View 수치에대한정의 CC : Interface, Abstract Class 를제외한 Concrete class 의갯수. AC : 추상클래스나 Interface 의갯수. 확장성의척도. Ca : 현재패키지의클래스에의존하고있는패키지의수. 책임의척도가됨. Ce: 현재패키지의클래스들이의존하고있는패키지의수. 독립성의척도가됨. A : 추상화정도를나타내며, 0~1 사이의값을가짐. 0 은완전구체적인패키지,1 은추상적인패키지를나타낸다. I: 변화에대한안정성을나타내며, 0~1 사이의값을가짐. 0 은외부변화에도끄떡없는패키지이며, 0 은작은변화에도쉽게흔들릴수있는패키지를나타낸다. D: Main Sequence 로부터의거리를나타내며, 0 은 Main Sequence 와가깝고, 1 은먼상태. Cycle: 패키지들상호간에의존성을가지고있을때발생안좋은상황이기때문에경고아이콘으로보여짐

Metrics View Dependencies 에서수치화된정보를그래프로보여줌

Abstractness Very High Stability Interface Packages Instability 이상적인 Package 로추상화가잘이루어져있으며안정적인 Package 를의미한다.

Dependencies 에서수치화된정보를 Console 에서텍스트로확인가능

Depend 알게된것 현재패키지의의존성문제점을찾기쉽다. 개발중에도문제점을체크할수있다.

Clover Clover필요하는이유 테스트에의해프로그램이어떻게작동하는지확인 전체테스트부분중얼만큼완료됐는지판단 결과에따라테스트기능개량가능 검사항목, 기능추가여부결정

Clover 설치방법 step1 Eclipse 에서 help->install new software 선택주소 : http://update.atlassian.com/eclipse/clover

Clover 설치방법 step2 next

Clover 설치방법 step3 finish Click

Eclipse menu 에서 Window->Show View->Other Clover 폴더에있는모든 Clover Interface 를선택하고아래와같이생기면 OK..!

Coverage explorer UnitTest 를시작한다. 그럼아래와같이테스트코드가얼마나 Cover 됐는지 Percentage 로나타난다.

Coverage Test Coverage 의비율에대한정보 Test Results 테스트결과에대한정보 Most Complex Packages 가장복잡성을가진 Package 를보여준다 Most Complex Classes 가장복잡성을가진 Class 를보여준다 Top Project Risks 가장복잡하고적은 Test Coverage 를가진 Class 를보여준다 Least Tested Methods 가장낮은 Test Coverage 의 Methods 을보여준다 Coverage Dashboard

Java Editor 초록색 Test 를합격하거나 Main Method 처럼외부 Test 를하는라인노란색실패한 Test Coverage 빨간색 Coverage 가없는 Code 회색제외된코드

Package 별로출력을해준다. 각사각형의크기는 complexity 함을보여줌 클래스의 label 을출력하지않는다. Coverage Treemap Report

Coverage Treemap Report 복잡성과Coverage된 Project 또는 Package를쉽게볼수있다. Package(labeled) 로나누고그안에class(unlabeled) 로보여준다. Package 또는Class의크기는복잡성을나타낸다. 색깔로codecoverage의정도를나타낸다.

Thank you! The end