Building Test Inventory

advertisement
How to Build Test Inventory
• Test inventory is built and updated as the
software project moves from phase to phase
– Start with Requirements
• List the actual and “budgeted” requirements
• Analyze which of these requirements are “testable” –
“reviewable”
– For each of the “testable” requirement, consider if there
are more than one item that is testable. (e.g. data, flow,
systems, performance, etc.)
• For each of the testable requirements
– Describe the test flow or scenario
– Describe each of the testable items
– describe the expected results for each testable item
An Initial Test List-Inventory Example
Req. #
#3
Req.
Description
Test flow/
scenario
Query must Populate the
Complete in Employee
1 to 2 secs Data base
and query
On all
Employees
younger than
25 and are
managers
Testable
items
1. Create
100 employee
Entries in DB
with one 24 yrs
manager
2. Set up a
query and
record
response time
and answer
Expected
Result for
Each testable
item
DB table with
Employee data
Response time
Less than 2
Seconds with
one entry
Prioritize the Test Scenarios
• Just as not all requirements have the same
priority, not all test scenarios have the same
priority - - - prioritize the test scenarios by
risks
– Cost of failure
– Users’ usage pattern
– Chance of error from past experience (e.g. error
prone areas, error prone development team, new
areas, etc.)
• add a column to the Test List-Inventory
An Initial Test List-Inventory Example
Req. #
#3
Req.
Description
Test flow/
scenario
Priority
Testable
items
Query must Populate the Med. 1. Create
Complete in Employee
100 employee
1 to 2 secs Data base
Entries in DB
and query
with one 24 yrs
On all
manager
Employees
2. Set up a
younger than
query and
25 and are
record
managers
response time
and answer
Expected
Result for
Each testable
item
DB table with
Employee data
Response time
Less than 2
Seconds with
one entry
Add More Test Information
• The example can not be tested without real
code and the data base system. So it is
closer to component or system test.
– Add a column stating the test type:
•
•
•
•
•
•
Req. review/inspection
Design review/inspection
Unit test
Functional test
Component test
System test
Add More Details to Test List-Inventory
• Required Test environment
–
–
–
–
System and system interfaces
UI
Data formats (date, numeric, alphanumeric, etc.)
Other factors: performance, reliability, security,
etc. ( any equipment/tool needed)
• If more information is needed to build and/or
complete the test inventory, conduct
“interviews” much like requirements
gathering
Two Levels of Interviews for Test Info.
• High Level ( appr. 15 minutes ) to get general
information - - - include managers
• Detailed Level (appr. 30 min – 1 hr.) to get
more explanation.
•Read page 167( Hutcheson) – “Expendable Tester Ploy”--- a touch of realism
Goals of High Level Test Interviews
• Identify:
– Project deliverables (which need to be tested?)
– Owners of deliverables (where to get them?)
– Project dependencies (sources of potential flaws?)
• Other project
• Shared DB/network/tools
• Passing data or control with another on-going project
• Get “opinions” on constraints and preferences:
–
–
–
–
Priorities of requirements and other project items
Schedule constraints
View on testing versus development versus support
Any specific goal behind this project
•
•
•
•
Beat competition in the market
Improve customer satisfaction
Cut support cost
Etc.
Goals of Detail Test Interviews
• Update business flow/logic flow
• Gain insight into views on testing and project
– Definition and views on quality
– Past test information
•
•
•
•
How long?
How much?
# of people and level of experiences
What were tested and what were usually left out
– Test tools used and needed
– Test process and fix process used
Some Guidance on Test Interviews
• Be prepared with questions
• Be quick and professional on the questions/answers
• Listen carefully --- especially for “volunteered”
information
• Review the answers with the participants to confirm
the answers
• Do not offer solutions when there are discrepancies
among the answers - - - ask for clarifications
Update your Test Inventory
•
•
•
•
•
•
Priority
Dependencies and integration needs
Tools needed
Order of testing
Systems interfaces
Etc.
Product Integration and Build for Test
• Functional Test
– module dependencies
– Other subsystem dependencies (DB or Network)
• Component Test
– Functional dependencies
• System Test
– Component dependencies
Download