Fundamentals Of Testing Flashcards

1
Q

Why testing is important

A

-costly if mistakes weren’t found
-7/10 it projects fail - can be because for poor testing
-testing can represent 40% of costs
-cost,time and quality benefits to software testing

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

Why is testing under time pressure

A

As it’s normal one of the last tasks prior to customer delivery, appropriately planned tests are often subject to time pressure

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

Example of failure in software

A

Nasa Nara lander, crashed due to a fault, cost over 50mil 1999

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

Why does testing matter

A

Inadequate testing costs us 22-59 billion annually
Can cost lives - therac-25 radiation machine 3 dead
Testing shows if our programs are reliable

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

How is smaller scale testing done

A

Reported by users and clients. Issues prioritised examined and resolved . Some issues result of defects

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

Causes of software defects

A

Human error e.g. in code or system (bug or defect)
Environmental conditions e.g. radiation, pollution can cause faults in firmware
Developer error -> software defect -> software fails

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

A failure is present…

A

A failure is present if a user expectation is not fulfilled adequately
E.g. products too hard to use, too slow

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

What is a failure

A

Deviation of the software from its expected delivery or surface
Happens when software does the wrong thing

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

What can a failure also be called

A

Problem, incident, issue

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

What is a defect

A

A manifestation of human error in software
- can be caused by requirements, design or coding errors

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

How can defects be discovered

A

Inspecting code or from software failures

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

What can a defect also be called

A

Bug or fault

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

What is an error

A

Human action producing an incorrect result
When humans make errors they introduce faults to program code

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

An error is not

A

Just an accident or mistake
Not necessarily just incompetence

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

Are errors inevitable

A

Errors are inevitable in a complex activity

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

Why is testing important

A

Reducing risk of problems in operatioanl environment
Contributes to quality
Contractual or legal requirements
Testing provides evidence it complies to standards

17
Q

Why is complete testing not feasible

A

Domain of possible inputs too large
Design issues may be too complex to test

18
Q

Where are bugs normally found

A

In clusters
Bug fixing and maintenance are error prone and may cause unintended faults

19
Q

What is testing

A

Exploration of a system to find defect
Repeated to ensure defect corrections have been effective

20
Q

What is debugging

A

Developers identify cause of defects in code and undertake corrections
Debugging is done before testing
Can be used to understand root cause of failures

21
Q

Name some test objectives

A

Finding defects
Gaining confidence about level of quality
Preventing defects

22
Q

What is static testing

A

Testing without executing the program
E.g. software inspections

23
Q

What is dynamic testing

A

Testing by executing program with real inputs

24
Q

What is maintenance/regression testing

A

Testing that no new errors have been introduced

25
Q

Unit testing

A

Addresses quality of individual units

26
Q

Integration testing

A

Checks if individual components operate together

27
Q

System testing

A

Checks if system delivers desired functionality

28
Q

Testing vs debugging

A

Testing shows failures caused by defects
Debugging identifies cause if defect and repairs code and makes sure it’s fixed