unit test process authors:sergey fedorov, dmitry balkin, dmitry korenkov june 2005

14
Unit Test Process Authors: Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

Upload: heather-byrd

Post on 06-Jan-2018

251 views

Category:

Documents


2 download

DESCRIPTION

3 Reason for Unit Test Process  What are we trying to fix? –Process/procedure needs to be clearly understood Procedure is not clearly defined –UT reports are not produced consistently Output is not standard  What CMM KPA justify the change? –Level 3 Software Product Engineering

TRANSCRIPT

Page 1: Unit Test Process Authors:Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

Unit Test ProcessAuthors: Sergey Fedorov,

Dmitry Balkin, Dmitry KorenkovJune 2005

Page 2: Unit Test Process Authors:Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

2

Definition and Scope of Unit TestingUnit Test Process (UTP) describes the usage of unit testing at the stage of component design and coding.

UTP focused on test– Preparation,– Execution and– Follow-up activities

UTP guards the correctness of the source code frozen as:– General– Restricted– Hot-fix

“… unit test is a method of testing the correctness of a particular module of source code. The idea is to write test cases for every non-trivial function or method in the module so that each test case is separate from the others if possible.” (Wikipedia: http://en.wikipedia.org/wiki/Unit_test)

Page 3: Unit Test Process Authors:Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

3

Reason for Unit Test Process

What are we trying to fix?

– Process/procedure needs to be clearly understood • Procedure is not clearly defined

– UT reports are not produced consistently • Output is not standard

What CMM KPA justify the change?– Level 3

Software Product Engineering

Page 4: Unit Test Process Authors:Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

4

Unit Test Process Actors

Development Manager Developer QA Manager QA Engineer Project Manager

WIS - Business Applications

Page 5: Unit Test Process Authors:Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

5

UTP TimelineG

ate

0+

Gat

e 1

Gat

e 2

Gat

e 3

Preparation

Execution

Con

tent

Fre

eze

Note: presented timelines are just recommendations and in each case Development Manager will set up the exact schedule depending on project specifics.

Inte

rnal

Fre

eze

Uni

t Te

st R

esul

ts

Corr

ecti

on

Free

ze 1

Corr

ecti

on

Free

ze 2

Corr

ecti

on

Free

ze 3

Follow-up:• Provide Unit Test Results to QA

Uni

t Te

st R

epor

t

Uni

t Te

st R

epor

t

Dev

elop

men

t St

art

Page 6: Unit Test Process Authors:Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

6

Process Overview • Unit Testing is the part of Development, it consists of three activities:

Preparation resulted to

Execution resulted to

Follow-up

• Coordinated by Freezes• Development coordination

• Freeze type Internal • Project coordination

• Freeze type General, Restricted• Content and Correction freeze in IPP• Validated at Gate 2, finalized at Gate 3

• Release coordination • Freeze type Hot-fix, Restricted, General• Hot-fix, Pre-release, CD-Refresh

Follow-up

Preparation Execution

Freeze

• UT Results• UT Report

Development Start

Page 7: Unit Test Process Authors:Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

7

UTP Preparation Activity

Input: Siebel ERs Development documents, design, specs Source Code

Output: Test cases

Owner/Actor: Development Manager, Developer

Development Manager:• Coordinating preparation activity among development team members

Developer: • Develops test case, • Updates development environment • Documenting test case, updating ER in Siebel

Page 8: Unit Test Process Authors:Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

8

UTP Execution Activity Input: Test Case, Development Environment, Component Module(s)Output: test case results for given input combination Owner/Actor: Development Manager, Developer

Actions to perform:Development Manager:

• Coordinating execution activity among development team membersDeveloper:

• Executing test case, • Adjusting development environment • Documenting test case results, updating ER in Siebel

Page 9: Unit Test Process Authors:Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

9

UTP Follow-up Activity

Input : Test case resultsOutput: Freeze form For project coordination:

• Unit Test Info field in Freeze form provides environment information• XING Unit Test report generated and published/updated in DL • Unit Test Results documents published/updated in DL or

Frozen ERs updated with test cases information in Siebel For release coordination:

• Unit Test Info field in Freeze form provides environment information• Frozen ERs updated with test cases information in Siebel

Owner/Actor: Development Manager, DeveloperActions performed:Development Manager: Generates and publishes unit test reports,

Consolidates and publishes unit test resultsDeveloper: Issues freeze form,

updates Unit Test Info in a freeze form with Environment information

Page 10: Unit Test Process Authors:Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

10

Documenting of Unit Test CasesOption 1: Unit Test Results document

• Using generic Test Case form, see "Unit Test Guidelines" or Table/text format , agreed by development team

• Mandatory fields/paragraphs are:– ER number– Test Case number (unique in document scope)– Input description and – Expected output description

Option 2: ER updates in Siebel (recommended)

• Using Test Instructions orSpecific tags, agreed by development team

• Mandatory fields are– Test Case Number (unique in ER scope)– Input description and – Expected output description

Page 11: Unit Test Process Authors:Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

11

Generation of Unit Test Report

1. Navigate to XING/Reports/Unit Test

2. Type text and search for components

3. Select component4. Select Family and

Freeze type5. Generate report

Note: XING generated Unit Test Report includes link to Siebel ERs that allows interactive access to ER-level information directly from report (test case documenting Option 2).

Page 12: Unit Test Process Authors:Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

12

Standard Unit Test Report

Unit Test Report should be published in DL project repository, Unit Test sub-folder. Publish button may not work, in this case please save generated report and publish it through standard publishing interface of DL.

• Report Structure:• Link to Freeze

form• Freeze type• Unit Test Info

• From freeze form

• Link to Siebel ER

• ER Status/Sub-status

• Short Description

Page 13: Unit Test Process Authors:Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

UTP Roles and Responsibilities

Development Manager: coordinating unit test preparation and execution activities in development team, generates and publishes unit test reports, consolidates and publishes unit test results

Developer: developing, executing and documenting test cases, updating and adjusting development environment, updating ERs in Siebel, issues freeze forms, updates Unit Test Info in a freeze form with Environment information

Page 14: Unit Test Process Authors:Sergey Fedorov, Dmitry Balkin, Dmitry Korenkov June 2005

Thank you!