06 Software Testing and Validation Flashcards

1
Q

black box testing approaches

A
  1. equivalence partitioning
    - split input into partitions where values in each partition can be viewed as similar
  2. boundary value analysis
    - for each partition, choose values at the boundary over those in the middle
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

equivalence partitioning approach

A
  1. number of possible test cases too large
  2. partition input domain into equivalence classes where every element of a class is handled the same way
  3. 2 test cases considered equivalent if program process them the same way
  4. since test cases considered equivalent, we just need to test one element
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

levels of partitioning

A
  1. first level partitioning
    - valid vs invalid
  2. 2nd level partitioning
    - smaller equivalence classes
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

guidelines for selecting equivalence

A
  1. range
    - 1 valid
    - 2 invalid
  2. specific value
    - 1 valid
    - 2 invalid
  3. member of a set
    - 1 valid
    - 1 invalid

create cartesian product to find number of test cases needed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

boundary value analysis

A
  1. based on boundary conditions (corner cases)
  2. greater number of errors occur at boundaries
  3. complements equivalence partitioning approach
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

guidelines for boundary value analysis

A

if boundary values are R1, R2 then
test R1-1, R1, R1+1, R2-1, R2, R2+1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

white box testing

A
  1. aka structural, code based testing
  2. test according to program structure
  3. goal is to exercise all statements
  4. have access to source codes
  5. test base on coverage of
    - statement
    - branch
    - path
    - conditions
  6. based on control flow graph
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

control flow graph

A
  1. shows flow of program statements
  2. formed by nodes and edges
  3. node: sequence of statements
  4. edge: flow between nodes
  5. decision nodes: node with multiple outgoing edges
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

cyclomatic complexity

A

used to find no. of paths needed to cover all edges and nodes in CFG

3 ways to calculate:
1. number of enclosed regions in CFG
2. number of decision nodes + 1
3. edges - nodes + 2

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

white box testing steps

A
  1. draw CFG
  2. calculate cyclomatic complexity number C
  3. find the basis path set: at most C paths that cover all nodes and edges
  4. design test cases to force execution along path in basis path set
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

independent paths

A
  1. an executable path through CFG from start node to the end node that has not been traversed before
  2. must move along at least one edge that has yet to be traversed
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

test coverage analysis

A
  1. statement coverage = executed statements/ total statements
  2. branch coverage = executed branch / total branch
    (branch = edges from decision nodes)
  3. basis path coverage = tested path/ cyclomatic complexity number
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

what is alpha testing

A
  1. evaluate quality of software
  2. tested by testers( not developers)
  3. at developer site
  4. comprise of both black and white box testing
  5. reliability and security not tested in depth
  6. does product work?
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

what is beta testing

A
  1. evaluate customer satisfaction
  2. tested by end users
  3. at client location
  4. comprise of mostly black box tests
  5. tested for reliability, security, robustness
  6. do customers like the product?
How well did you know this?
1
Not at all
2
3
4
5
Perfectly