1. Fundamentals Of Testing Flashcards

1
Q

What is the definition of testing?

A

The process consisting of all lifecycle activities (both static and dynamic) that deal with the planning, preparation, and evaluation of a software product.

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

What is the goal of testing?

A

Ensure that software meets all specified requirements, that it fulfils its purpose, and to find any defect conditions.

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

What is the difference between testing and debugging?

A

Testing by testers, shows error effects
Debugging by Devs, finds analyzes and fixes error conditions in code

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

What is the difference between verification and validation?

A

Verification checks that a software meets its specifications (requirement doc). Non/functional requirements

Validation ensures a software meets customer expectations, as spec may not reflect user needs

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

What is quality control?

A

A product-oriented, corrective approach. Focus on achieving appropriate levels of quality. Testing is a form of QC. Test results fix defects.

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

What is quality assurance?

A

Process-oriented, preventive.
Focus on process implementation and improvement. Everyone’s responsible.
Applies development and testing processes.
Test results provide feedback on performance of said processes

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

What is an error?

A

Errors are mistakes made by people. Causes include time pressure, lack of training, complexity of subject

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

What is a defect?

A

Errors produce defects, which are faults or bugs. Defects are found in documentation.

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

What is a failure?

A

Unintended behaviour in software caused by defects or environmental conditions

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

What is root cause analysis?

A

Finding the fundamental reason for a problem, in order to prevent/reduce the frequency of similar defects & failures

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

Testing Principle 1. Testing shows…

A

Testing shows the presence, not the absence of defects.

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

Testing principle 2. Exhaustive testing…

A

Exhaustive testing is impossible. (Prioritize to focus test efforts)

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

Testing principle 3. Early testing saves…

A

Early testing saves time and money (shift left)

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

Testing principle 4. Defects…

A

Defects cluster together (~Pareto principle of 80/20)

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

Testing principle 5. Tests…

A

Tests wear out. (updates vital, except in automated regression testing)

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

Testing principle 6. Testing depends…

A

Testing depends on context. (No universal approach)

17
Q

Testing principle 7. Absence…

A

Absence-of-defects fallacy. (Verification AND validation essential)

18
Q

The test process usually consists of which 7 processes?

A

Test planning, analysis, design, implementation, execution, completion. Monitoring and control throughout.

19
Q

What is the goal of test planning?

A

Define test objectives and select an approach to achieve them

20
Q

What is the goal of test monitoring and control?

A

Ongoing checks which compare actual process to the plan. Then taking actions required to meet the objectives of testing

21
Q

What is the goal of test analysis?

A

Defines “what to test?” by analyzing test basis for features to test. We define these conditions, then prioritize them. The test basis is verified to identify defects

22
Q

What is the goal of test design?

A

Defines “how to test?” by turning test conditions into test cases. We decide how much (coverage items) and where (test environment) we test, and what we need to do so (test data requirements, tools & infrastructure). Closely linked to test implementation

23
Q

What is the goal of test implementation?

A

We acquire the testware, create test suites/procedures including scripts (manual and automatic). We then prioritize the tests by arranging their execution schedule, then build and verify the test environment. Closely linked to test design, the more practical side.

24
Q

What is the goal of test execution?

A

Test! Manual or automated, in order of test schedule. Then log results, compare to expected results, analysis and reporting of anomalies based on failures observed

25
Q

What is the goal of test completion?

A

The official end of a round of tests, at release/end of iteration/completion of test level. We create change requests or product backlog for unresolved defects along with a test report to pass on to stakeholders. The test environment is shut down, and useful testware is archived/handed over

26
Q

What is testware?

A

Testware is the product of test activities. Any kind of output (test cases/procedures, logs, defect reports, change requests…)

27
Q

What are the roles in testing?

A

Test management, testing itself. Can both be done by same person.

28
Q

What is involved in the test management role?

A

The activity around testing: test planning, monitoring/control, and completion. Responsibility for the process, team and leadership.

29
Q

What is involved in the testing role?

A

Testing. So analysis, design, implementation and execution of tests

30
Q

What are the benefits of independent testing?

A

Recognize a variety of failures and defects.
Assumptions: disprove, verify, challenge
Perspective: background, bias, technical knowledge

31
Q

What are the drawbacks to independent testing?

A

Blame: for delays, finger-pointing at found defects
Ownership: devs lose responsibiliy for quality
Outsider: less collaboration/relationship with dev
Bottleneck