<4D F736F F F696E74202D20C7F6B4EBB8F0BAF1BDBA202D20BCBCB9CCB3AA20BCD2C7C1C6AEBFFEBEEE20C5D7BDBAC6AE C0AFC1D

Similar documents
삼성955_965_09

Manufacturing6

Ver. T3_DWS.UTP-1.0 Unit Testing Plan for Digital Watch System Test Plan Test Design Specification Test Cases Specification Date Team Infor

슬라이드 1

Software testing

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

Microsoft PowerPoint - 3조-최종발표.pptx

Microsoft Word - [TP_3][T1]UTP.docx

Microsoft Word - [2017SMA][T8]OOPT_Stage_1000_ docx

UML

PowerPoint 프레젠테이션

Orcad Capture 9.x

Microsoft Word - [2017SMA][T8]OOPT_Stage_1000 ver2.docx

정보기술응용학회 발표

SW¹é¼Ł-³¯°³Æ÷ÇÔÇ¥Áö2013

Windows Embedded Compact 2013 [그림 1]은 Windows CE 로 알려진 Microsoft의 Windows Embedded Compact OS의 history를 보여주고 있다. [표 1] 은 각 Windows CE 버전들의 주요 특징들을 담고

성능 감성 감성요구곡선 평균사용자가만족하는수준 성능요구곡선 성능보다감성가치에대한니즈가증대 시간 - 1 -

PowerPoint 프레젠테이션

감각형 증강현실을 이용한

<31325FB1E8B0E6BCBA2E687770>

歯이시홍).PDF

Ver. DS-2012.T3.DWS.STR-1.0 System Test Report for Digital Watch System Test Cases Specification Test Summary Report Project Team 이동아 Latest update on

Ver. 4.0 OOPT Stage 1000 <Plan and Elaboration> Version 4.0 Project Team T7 Team Date Team Information 오세욱 임현유

PowerPoint 프레젠테이션

CM & RE tools

<B1B3C8C620B1B3B0A12E687770>

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

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

목차 1. 제품 소개 특징 개요 Function table 기능 소개 Copy Compare Copy & Compare Erase

I I-1 I-2 I-3 I-4 I-5 I-6 GIS II II-1 II-2 II-3 III III-1 III-2 III-3 III-4 III-5 III-6 IV GIS IV-1 IV-2 (Complement) IV-3 IV-4 V References * 2012.

PRO1_02E [읽기 전용]

1.장인석-ITIL 소개.ppt

Software Engineering

Introduction to CTIP

13 Who am I? R&D, Product Development Manager / Smart Worker Visualization SW SW KAIST Software Engineering Computer Engineering 3

ecorp-프로젝트제안서작성실무(양식3)

<B1DDC0B6C1A4BAB8C8ADC1D6BFE4B5BFC7E228C1A63836C8A3292E687770>

PowerPoint 프레젠테이션

untitled

4 CD Construct Special Model VI 2 nd Order Model VI 2 Note: Hands-on 1, 2 RC 1 RLC mass-spring-damper 2 2 ζ ω n (rad/sec) 2 ( ζ < 1), 1 (ζ = 1), ( ) 1

1 SW

SW

텀블러514

Microsoft PowerPoint - PL_03-04.pptx

15_3oracle

About

3 Gas Champion : MBB : IBM BCS PO : 2 BBc : : /45

DIY 챗봇 - LangCon

SchoolNet튜토리얼.PDF

DE1-SoC Board

Oracle Apps Day_SEM

Microsoft Word - [2017SMA][T8]OOPT_Stage_2040 ver2.docx

Software Unit Test Coverage and Adequacy 김의섭

0710 세종힐스공고

LCD Display

<313120C0AFC0FCC0DA5FBECBB0EDB8AEC1F2C0BB5FC0CCBFEBC7D15FB1E8C0BAC5C25FBCF6C1A42E687770>

Microsoft PowerPoint - 리스크기반 테스팅 전략_STA_IBM_ _v1.0.ppt

APOGEE Insight_KR_Base_3P11

소개 는 국내 산업계 IC 전문 인재양성과 기술 보급을 위한 IC 표준화 및 시험인증 전문 교육기관입니다. IC 글로벌 경쟁력 제고를 위한 핵심인재 양성을 목적으로 교육세나 및 자격시험 서비스를 제공합니다. 교육 훈련비용 일부를 지원하는 직업능력개발훈련과정을 운영합니다

<30342DBCF6C3B3B8AEBDC3BCB33228C3D6C1BE292E687770>

화판

BMP 파일 처리

Ver 1.0 마감하루전 Category Partitioning Testing Tool Project Team T1 Date Team Information 김강욱 김진욱 김동권

Microsoft PowerPoint - 3.공영DBM_최동욱_본부장-중소기업의_실용주의_CRM

소프트웨어개발방법론

자연언어처리

Software Verification 1 st Testing System Test Team 고예은 김수현 김아름 1

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

기타자료.PDF

Microsoft Word - USB복사기.doc

untitled


슬라이드 0

IPAK 윤리강령 나는 _ 한국IT전문가협회 회원으로서 긍지와 보람을 느끼며 정보시스템 활용하 자. 나는 _동료, 단체 및 국가 나아가 인류사회에 대하여 철저한 책임 의식을 가진 다. 나는 _ 활용자에 대하여 그 편익을 증진시키는데 최선을 다한다. 나는 _ 동료에 대해

Microsoft Word _whitepaper_latency_throughput_v1.0.1_for_

untitled

methods.hwp

00 SPH-V6900_....

歯Phone

Slide 1

untitled

PCServerMgmt7

歯목차45호.PDF

Microsoft PowerPoint - CoolMessenger_제안서_라이트_200508

歯처리.PDF

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

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션



Switching

Microsoft PowerPoint 테스트.ppt

ez-shv manual

PowerPoint 프레젠테이션

PRO1_09E [읽기 전용]

<B1D4B0DDBCAD202D20C4DAB5E520B1E2B9DD2E687770>

Interstage5 SOAP서비스 설정 가이드

[ReadyToCameral]RUF¹öÆÛ(CSTA02-29).hwp

Transcription:

소프트웨어테스트 - 개념, 기법및활용- 건국대학교유준범 http://dslab.konkuk.ac.kr 2012.02.24 현대모비스세미나 1

테스트분야개념들 Boundary Value 테스트 소프트웨어테스트 테스트계획서 3 점점합 블랙박스테스트테스트결과보고서화이트박스테스트 구조테스트 테스트실행 모델기반테스트 Pairwise 테스트 기능테스트 CTIP (Continuous Test & Integration Platform) 테스트케이스자동생성테스트오라클테스트케이스 Category-Partitioning 테스트테스트데이터 Coverage Criteria 테스트자동화도구테스트데이터자동생성테스트드라이버테스트 Scaffolding Coverage 측정테스트명세서하드웨어 - 소프트웨어 Co-테스트 2

목차 삼성전자핸드폰 SW 블랙박스테스트사례 소프트웨어테스트 블랙박스테스트 블랙박스테스트수행내용 ( 건국대학교수업中 ) 화이트박스테스트 테스트자동화환경 3

삼성전자핸드폰 SW 블랙박스테스트사례 4

삼성전자핸드폰 SW 블랙박스테스트 삼성전자 ( 구 ) 정보통신총괄직군 ( 職群 ) -G (General) - E (Engineering) -M (Marketing) -S (Software) -T (Test) 시험, 검수및품질관리 5

테스트대상 사용자설명서 블랙박스테스트 전화통화中, + 예약된 Alarm 동작문자메시지 (SMS) 도착다른전화가걸려와 통화중대기 발생 테스터 정상동작? 6

테스트대상 사용자설명서 블랙박스테스트 전화통화中, + 예약된 Alarm 동작문자메시지 (SMS) 도착다른전화가걸려와 통화중대기 발생 + 문자메시지저장함 Full 상태 테스터 정상동작? 7

현장에서수행되는블랙박스테스트 블랙박스테스트이론 전화통화中, + 예약된 Alarm 동작문자메시지 (SMS) 도착다른전화가걸려와 통화중대기 발생 + 문자메시지저장함 Full 상태 Category-Partitioning Test Pairwise Test Boundary Value Test 정상동작? 8

통신사에납품하기위해서는? 개발자 (E 직군 ) 인증용블랙박스테스트 테스트케이스 : 약 3,000 개성공률 : 약 99.85 % 테스트주체 : 통신사실제테스트주체 : 개발사 SCH-W290 9

통신사인증용블랙박스테스트 기능별구성 Messenger - 문자메시지 - MMS - 이메일 - CB / 긴급방송 Call 30% 테스트주체 : 각개발팀 각개발팀 Multimedia Browser PC Link SW Platform (Middleware) Component / Integration Test vs. System Test 개발총괄 10

11

소프트웨어테스트 12

소프트웨어테스트 입력을주고소프트웨어를직접실행함으로써, 원하는출력이생성되는지확인하는일련의작업 입력 소프트웨어 실행환경 출력 =? 원하는출력 정리 수정 전달 테스트결과 개발자 13

언제까지반복? 정답 : 기준을만족할때까지 테스트성공률 테스트실행관점 기준 Coverage Criteria 테스트입력생성관점 + 테스트품질 14

블랙박스 vs. 화이트박스 블랙박스테스트 기능테스트 (Functional Test) 있어야할기능이정확하게구현되어있는가? 기능명세서, 요구사항명세서, 사용자설명서모든기능을테스트입력으로만들어야내부구현은관심無 화이트박스테스트 구조테스트 (Structural Test) 구현프로그램의가능한모든경우 (Execution Path) 를시험해봤는가? CFG (Control Flow Graph), DFG (Data Flow Graph) 특정 Coverage Criteria를만족하는테스트입력을만들어야기능의구현여부는관심無 15

질문!!! 1. 시스템시험 (System Test) 은어떤종류의테스트입니까? 정답 : 블랙박스테스트 2. 단위시험 (Unit Test) 은어떤종류의테스트입니까? 정답 : 두종류모두가능 16

17

블랙박스테스트 18

Needles Haystack Let s find needles out!!! 19

균등분할 = Random Testing = Uniform Testing Haystack 20

실제로바늘은? Needles Needles es Needles Needles 21

바늘을신속하게찾기위해서는? 정보 (Information) Haystack Needles 누가? 무엇을? 어디로? 어디에서? 개발자누가? 어떤기능을? 어떤방식으로? 어떤환경 / 가정에서? 22

정보는어디에? 명세서 (Specification) 프로젝트계획서 (Project Plan) 요구사항명세서 (Requirements Specification) 디자인명세서 (Design Specification) 테스트계획서 (Test Plan) 각종모든문서 23

블랙박스테스트 명세서에정의된기능이잘구현되어있는지확인하는테스트 가장기본이되는테스트 (A Base-line Test) = 기능테스트 (Functional Test) = 명세기반테스트 (Specification-based Test) = 체계적분할기반테스트 (Systematic Partitioning-based Test) 기본이론 : 체계적분할 (Systematic Partitioning) 24

체계적분할 기본이론 : 체계적분할 (Systematic Partitioning) 특정정보를이용하여, 전체테스트입력범위중오류를잘찾아낼수있는입력구간 (region of input space) 을찾아낸다. 전체입력범위를모두테스트할수없다. 오류들은주로몰려있다. 25

동일한 Cost 로수행되는테스트범위 균등분할 테스트비용 ( 회수 ): 36 회테스트효율 : 低 26

동일한 Cost 로수행되는테스트범위 체계적분할 Needles Needles Needles Needles 테스트비용 ( 회수 ): 27 회테스트효율 : 高 27

기능테스트 기능테스트 블랙박스테스트 명세기반테스트 체계적분할기반테스트 명세 (Specification) 를사용하여입력범위를분할 (partitioning of input space) 각분할된범위 (Category) 를테스트 28

Identify Independe Testablee Features ntly y 기능테스트단계 Genera erate Test-Case Specifi ifications Generate Test-C t-case Specifica cations Instantiate Tests Generate Test Cases Source: Software Testing and Analysis by Mauro Pezzè and Michal Young, WILEY 29

Brute force testing 대표값 을찾는다 기능명세서 독립테스트속성 독립테스트속성 을찾는다. 모델 을만든다. Finite State Machine, Grammar, Algebraic Specification, Logic Specification, CFG / DFG 대표값 모델 Semantic Constraint, Combinational Selection, Exhaustive Enumeration, Random Selection 테스트케이스명세서를만든다. 테스트케이스명세서 Test selection criteria 테스트케이스를생성한다. 테스트케이스 / 데이터 Manual Mapping, Symbolic Execution, A-posteriori Satisfaction Instantiate tests Scaffolding 30

기능명세서분석 전통적인블랙박스테스트 모델기반테스트 테스트데이터생성 31

수동 기능명세서분석 어려워요!!! 수동 전통적인블랙박스테스트 수동 자동 모델기반테스트 수동 테스트데이터생성 32

수동 기능명세서분석 현실은? 전통적인블랙박스테스트 수동 모델기반테스트 Brute Force Test 막테스트 수동 테스트데이터생성 33

기능테스트를잘하기위해서는? 1. 기능명세서를꿰자. 삼성전자 T 직군 SW 테스터처럼 2. 기능테스트의기본에충실하자. Systematic Partitioning-based Test 오류가많을만한곳을중점적으로공략 3. 사람중심으로운영하자. 손으로다할수있어야도구도잘쓴다. 34

대표적인블랙박스테스트기법들 Category-Partitioning Test 1. 독립테스트속성 을찾는다. 2. 각속성별로 대표값 을찾는다. 3. 테스트케이스를생성한다. Pairwise Test 1. Category-Partitioning Test를수행한다. 2. 관련있는속성들을 2~4 단위로묶는다. 3. 자동화도구를활용한다. Catalog-based Test 1. 오래동안유사한테스트를수행한다. 2. 대표적인속성을 Catalog로만든다. 3. 위테스트들을수행한다. 35

예제 : 모니터디스플레이테스트 Category-Partitioning titi i Test Step 1. 독립테스트속성 을찾는다. Display Mode Language g Fonts Color Screen Size Step 2. 대표값 을찾는다. Display Mode Language Fonts Color Screen Size Full-Graphics English Minimal Monochrome Hand-Held Text-Only French Standard Color-Map Laptop Limited- Bandwidth Spanish Document- Embedded 16-Bits Full-Size Korean True-Color Step 3. 테스트케이스를생성한다. 3 x 4 x 3 x 4 x 4 = 432 test cases 36

Test Cases: 432 17 Pairwise i Test Language g Color Display Mode Fonts Screen Size English Monochrome Full-graphics Minimal Hand-held English Color-map Text-only Standard Full-size English 16-bit Limited-bandwidth - Full-size English True-color Text-only Document-Embedded Laptop French Monochrome Limited-bandwidth Standard Laptop French Color-map Full-graphics Document-Embedded Full-size French 16-bit Text-only Minimal - French True-color - - Hand-held Spanish Monochrome - Document-Embedded Full-size Spanish Color-map Limited-bandwidth Minimal Hand-held Spanish 16-bit Full-graphics Standard Laptop Spanish True-color Text-only - Hand-held Korean - - Monochrome Hand-held Korean Color-map - Minimal Laptop Korean 16-bit Limited-bandwidth Document-Embedded Hand-held Korean True-color Full-graphics Minimali Full-size Korean True-color Limited-bandwidth Standard Hand-held 37

http://www.pairwise.org 38

39

블랙박스테스트수행내용 ( 건국대학교수업中 ) 40

건국대학교 2010 소프트웨어검증수업 팀프로젝트내용 : 1. CTIP 환경구축 ( 오픈소스만이용 ) 2. 기능테스트수행 3. 테스트대상 : NuSRS Quick Checker (Java) + Quick Checker ( 문법검사도구 ) NuSRS 2.0 ( 정형명세도구 ) 41

NuSRS &Q Quick kchecker FOD (Function Overview Diagram) 42

FSM / TTS (Timed Transition System) SDT (Structured Decision Table) 43

수행내용 44

기능명세서분석 독립테스트속성 찾기 대표값 찾기 테스트케이스생성 테스트데이터생성 테스트수행및결과보고서작성 Category-Partitioning Test! 45

8 개기능요구사항 46

1. 기능명세서분석 8 개기능요구사항 20 개구체화된기능요구사항 47

2. 독립테스트속성 찾기 48

49

3. 대표값 찾기 50

51

Category-Partitioning ii i Test 4. 테스트케이스생성 SDT Pairwise Test 32 13 52

TTS 총 73 테스트케이스생성 96 33 53

5. 테스트데이터생성 NuSRS SDT 작성 XML 형식으로저장 54

55

JUnit: 테스트환경테스트 Driver 6. 테스트실행 Scaffolding + 테스트대상 1. 테스트데이터입력 2. 테스트실행 3. 테스트결과확인 ( 테스트오라클 ) 56

7. 결과보고서작성 57

20 개의구체화된요구사항 58

59

CTIP(Continuous Testing & Integration Platform) 사용된무료도구들 구축된 CTIP 환경 건국대학교 4 학년수업 : 소프트웨어검증 http://dslab.konkuk.ac.kr/class/old_classes.htm 60

건국대학교 4 학년수업 : 소프트웨어검증 http://dslab.konkuk.ac.kr/class/old_classes.htm 61

For More Information http://dslab.konkuk.ac.kr p// 62

63

소프트웨어테스트 64

블랙박스테스트 65

블랙박스테스트를잘하기위해서는? 1. 기능테스트의기본에충실하자. Systematic Partitioning-based Test 오류가많을만한곳을중점적으로공략 2. 각종명세서를꿰자. 눈감고도처음부터끝까지읊을수있을정도로 3. 전문가를양성하자. 도구는도구일뿐 손으로할수없으면아무리비싼도구로도못한다 66

67

화이트박스테스트 68

테스트자동화환경 69