Good Tests Flashcards

1
Q

What four aspects of a program can be tested?

A
  1. Functional
  2. Operational
  3. Structural
  4. Usability
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is the functional aspect of a program?

A

Requested features working?

Input → expected output

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q
  1. What is the operational aspect of a program?

2. How do you test it?

A
  1. Speed (memory/cpu usage)

2. Run program and check computer ressources

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q
  1. What ist the structural aspect of a program?

2. How do you test it?

A
  1. Quality of the code

2. Manual review with best practices

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

What are the three measurements of Usability?

A
  1. Task performance
  2. Questionnaires
  3. Behaviour and physiology
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the three (four) levels of functional testing?

A
  1. Unit
  2. Integration
  3. System
    (4. Acceptance)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the principles for functional testing?

A
  1. Incremental
  2. Iterative
  3. Continous
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is incremental testing?

A

From function to system

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

What ist iterative testing?

A

Always test after modification

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

What is continuous testing?

A

Automatic build and testing on every push = iterative testing

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

What is a unit test?

A

Code testing the public behaviour of a class

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

What are the four Phases (As) of unit testing?

A
  1. Arrange (Setup)
  2. Act (Execute)
  3. Assert (Verify)
  4. Annihilate (Teardown)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is test data?

A

Expected test results

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

What is a test case?

A

Set of input values, preconditions, expected results and postconditions

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

What is test fixture?

A

A fixed state of fake objects for running tests

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

What is a test suite

A

Several test cases for a tested component or system

17
Q

What is a test runner?

A

A class running test suites

18
Q

What is class behaviour?

A

Expected result of a public function

19
Q

Why do we care for code coverage?

A

We can’t test everything. Sp we test one case for each path.

20
Q

What is triangulation?

A

Technique to force us to progressively implement production code.