Software Testing and Verification Flashcards

1
Q

Define Validation Testing

A

To demonstrate to the developer and the customer that the software meets its requirements

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

Define Defect Testing

A

To discover situations in which the behavior of the software is incorrect or undesirable

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

Define verification, testing and formal verification

A

Verification - ensures what you have designed does the job
Testing 0 make sure the things the program does are done right
Formal Verification - proving mathematically that the underlying algorithm is correct

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

Describe the difference between verification and validation

A

Verification is verifying the software conforms to its specification. Validation is validating that the software should do what the user requires

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

Define principles, guidelines and standards

A

Principles - abstract design rules “an interface should be easy to navigate”
Guidelines - advice on how to achieve principle - “use color to highlight links”
Standards - specific, measurable rules “links are RGB #1010D0

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

Describe the difference between software inspection and testing

A

Inspection - concerned with analysis of static system representation to discover problems (static)
Testing - concerned with exercising and observing project behavior (dynamic)

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

Describe the pre-alpha stage of the software release cycle

A

All activities before testing - requirements analysis, software design, development, etc.

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

Describe the alpha testing stage of the software release cycle

A

Simulated testing by potential users/independent test team.

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

Describe the beta testing stage of the software release cycle

A

External user acceptance testing where early versions (beta versions) of the software is released to a limited audience outside the development team.

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

Define development testing

A

All testing activities that are carried out by the team during development. This can include
- unit testing - testing individual components in isolation
- component testing - several unites are integrated and tested
- system testing - some or all components are integrated and the system and testing as a whole

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

Define automated testing

A

The use of special software to control the execution of tests and the comparison of actual/predicted outcomes

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

Explain the partition testing strategy

A

Identify groups of inputs that have common characteristics and should be processed in the same way. Choose tests from within each of these groups.

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

Explain the guideline based testing strategy

A

Use testing guidelines to choose test cases - these guidelines reflect previous experience of the kinds of errors programmers often make

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

Describe test-driven development

A

An approach to program development where test development is inter-leaved with code development. Tests are written, then code to fulfill the tests.

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

Define regression testing

A

Testing the system to check that changes have not broken previously working code

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

Define release testing

A

The process of testing a particular release of a system that is intended for use outside the development team. The goal is to convince the supplier that the system is good enough for use.

17
Q

Define requirements-based testing

A

This involves examining each requirement and developing tests for it

18
Q

Define performance testing

A

Testing emergent properties of a system such as performance and reliability

19
Q

What happens during user testing?

A

The user or customer provides input and advice on system testing