Date post: | 06-Jan-2018 |
Category: |
Documents |
Upload: | heather-byrd |
View: | 245 times |
Download: | 2 times |
Unit Test ProcessAuthors: Sergey Fedorov,
Dmitry Balkin, Dmitry KorenkovJune 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)
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
4
Unit Test Process Actors
Development Manager Developer QA Manager QA Engineer Project Manager
WIS - Business Applications
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
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
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
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
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
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
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).
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
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
Thank you!