软件测试-解决的主要问题:
Fundamental problems
• Test oracle
• Test adequacy
• Test generation
Important problems
• Test process and plan
• Test automation
软件测试问题之间的关系:
Covering the Representative Choices of Input
1Level 1: Single input parameter
2Level 2: Combination of input parameters
3Level 3: Sequence of parameter combinations
Single input parameter Level-1 Techniques
1Equivalence class partitioning (ECP, 等价类划分)
How to Find Classes?
Based on what the requirement says:
•The parameter shall be within a range [a, b].
•within range [a, b]: a valid class
•too large (b, ]: an invalid class
•too small [- , a): a invalid class
Additional Classes:
• Empty: value exists, but has no contents.
• Blank: value exists, and has content.
• Null: value does not exist or is not allocated.
• None: does not provide value for the parameter, or when the parameter require selecting one item from a list, make no selection.
• Very long: the length of the input is extremely long.
• Special value: February 29
• Encoding of string: utf-8 vs. GBK
2Boundary value analysis (BVA, 边界值分析)
3Cause-effect graph and decision table(因果图和决策表)
• Analyze the causal relation between input and output as edges.
• Adequacy criterion: cover each edge at least once
.
符号表示: