Fundamentals of Testing Flashcards

1
Q

Why do we Test?

A

Software is everywhere, and failed software may resullt in financial loss, wasted time, loss of reputation or injury or death. Testing reduces the risk of software failure.

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

What are causes of software defects?

A

Error, defect, and failure

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

What is an error?

A

A human action that produces an incorrect result.

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

What is a defect?

A

A flaw in a system that can cause it to fail to perform its required function - also known as a bug.

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

What is a failure?

A

Deviation of a system from its expected delivery, service or result. Failure can be caused by many reasons (e.g. data, envrionment, people).

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

In which areas is testing most likely needed?

A

Software development, Maintenance, and Operations.

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

Why is it necessary in Software Development?

A

To provide quality checks at each stage and remove defects.

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

Why is it necessary in Maintenance?

A

To test changes when live software is modified to ensure the existing system has not been affected (regression).

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

Why is it necessary in Operations?

A

To assess system charateristics such as reliability or availability.

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

How are Testing and Quality related?

A

Testing can give confidence in the quality of the software if it finds few or no defects.

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

What is Quality?

A

The degree to which a component, system or process meets specified requirements and expecations.

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

How do we measure Quality?

A

Defects found, number of failures, usability rating, and maintainability.

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

How much testing is enough?

A

It is context dependent. Considerations on risk, project contrstraints, and time should be considered.

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

What is Testing?

A

Process consiting of all life cycles activities, both static and dynamic, concerned with planning, preparation and evaulation of software products and related work products

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

How do Static and Dynamic Testing improve quality?

A

They improve the system under test, the development process and the testing process.

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

What are the main testing objectives?

A

Finding defects, meeting business requirements, gaining confidence with the level of quality, providing information for decision making and preventing defects.

17
Q

How are debugging and testing different?

A

Testing is carried out by testers who observe the failures and report them to developers who investigate, fix the defect, and check that the fix works before the tester tries again.

18
Q

What are the seven testing principles?

A

1.Testing shows the presence of defects. 2. Exhaustive testing is impossible. 3. Early Testing. 4. Defect clustering (pareto principle). 5. Pesticide Paradox (re-runnign tests less effective). 6. Testing is context-dependent. 7. Absence-of-errors fallacy (finding and fixing defects is irrelevant if the system is unoperable).

19
Q

What are the 5 key testing phases?

A
  1. Planning & control. 2. Analysis & design. 3. Implementation & execution. 4. Evaluating Exit Criteria & Reporting. 5. Test Closure Activities.
20
Q

What is Test Planning & Control?

A

Phase in which we verify the mission of testing - done by determing scope & risks, implement test policy or strategy, determine the approach, the required test resources, schedule the acitivities, and determine exit criteria. Test control is an ongoing acitivity of comparing actual progress vs. expected.

21
Q

What is Test Analysis and Design?

A

Phase in which general testing objectives become tangible test conditions and designs - tasks include review test basis (requirements), evaluate test basis for testability, identify and prioritise test conditions, design and prioritise HL tests, design envrionment.

22
Q

What is Test Implementation and Execution?

A

In implementation we finalise, implement and prioritise test cases, develop and prioritise test procedures, and create test suites. In Test execution we execute, log the outcome, compare the actual vs. expected, repeat procedures as requested.

23
Q

What is Evaluating Exit Criteria and Reporting?

A

Checking the test logs against exit crtieria, asses if more tests are needed, write a test summary report for stakeholders.

24
Q

What are the Test Closure Activities?

A

Checking planned deliverables have been produced, close incident reports, document the acceptance of the system, finalise and acrhive testware, hand over to ops, analyse lessons learnt.

25
Q

What is Test Independence and why is it relevant?

A

It means designing the tests, specifically a person or organisation, the more external the more independent. E.g. Developers can write tests, or someone from dev team, a test team within the org., or a test company.

26
Q

How are Testers and Developers different?

A

Developers believe their software is acceptable, it will work, defects are bad, short-term view, testers are negative, they have a positive view, innocent until proven guilty. Testers believe the software has defect, it won’t work, defects are good, long-term view, developers are optimistic, negative view looking for what doesn’t work, and believe devs are guilty until proven innocent.

27
Q

How do we improve the tester vs. developer relationship?

A

Start collaboration early, find faults in the work product, write factual, objective reports, imagine yourself in their position, confirm mutual understanding.

28
Q

What is the code of ethics?

A

A set of values to which a tester adheres to, these are public, client and employer, product, judgment, management, profession, colleagues, and self.