Software Testing Flashcards

1
Q

What is Software Testing

A

Process of exercising a problem with the purpose of finding errors prior to delivering it to the user

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

What is Equivalence Class Testing?

A

Practically can never do exhausting testing on input combinations

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

What is unit testing?

A

Testing only parts of the code to deliver information faster.

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

What is Integration Testing?

A

Type of software testing in which the different units, modules or components of a software application are tested as a combined entity

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

Top-down testing

A

Testing from the topmost or highest-level module and gradually proceeding to the lower modules. Each module is tested one by one, and then integrated to check the final software’s functionality.

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

Bottom-up Testing

A

Testing lower-level modules first, and then gradually progressing incrementally to higher-level modules. This approach is suitable when all units are available for testing.

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

Sandwich Testing

A

Combines the top-down and bottom-up approaches. It uses both stubs and drivers.

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

System Testing

A

Determine whether system meets requirements

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

Acceptance Testing

A

Get Approval from Customer

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

Types of Testing Methods

A

Static Testing: Collects information about a software without executing it.
Dynamic Testing: Collects information about a software with executing it.
White Box: Check that all statements and conditions have been executed at least once.
Black Box: No knowledge about code internals, relying only on interface specs.
Coverage Analysis: Measuring how much of the code has been exercised.
Regression Testing: Run test and compare output on the same test on previous code.

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

How should tests be organized?

A

Simplicity: Clear and easy to understand.
Decomposability: Modules can be tested independently.
Controllability: Tests can be automated and reproduced
Observability: Make status queryable.
Stability: Recovers well from failures.
Operability: If well done right away, testing will be less blocked from error found
Understandability: All relevant information is documented.

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