Chapter 1 Flashcards

1
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
2
Q

What is a Fault?

A

A manifestation of an error in software testing.

*Also known as a bug
*Fault may cause a failure

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

What is Failure?

A

Deviation of the software from its expected delivery or service.

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

Define Reliability.

A

The probability that a software will not cause any failure of the system for a period of time under specific conditions.

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

What is software quality?

A

Software quality measures how well a software is designed and how well it is designed to meet its requirements. Also known as fitness of purpose.

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

What is the difference between quality assurance and quality control.

A

QA is a proactive process-oriented approach that focuses on preventing defects and improving the overall quality of the product or service.

On the other hand, QC is a reactive product-oriented approach that focuses on identifying and correcting defects in the final product or service.

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

What is the defect management approach.

A

This is counting and managing of defects. Defects are commonly categorized by how severe they are and the numbers in each category are used for planning.

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

Why do faults occur in software?

A

Software are written by humans who can’t possibly know everything. They have skills but aren’t perfect so they make mistakes which causes faults and errors.

systems may be incomplete.

Timelines causes rushing and low quality programming.

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

Why is software testing necessary?

A

To learn about the reliability of the software.

Because software is likely to have faults.

Failures in software can be very expensive.

It helps in avoiding in a lawsuit from customers.

To stay in business.

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

How much testing is enough?

A

It depends on the risks of your system and possibly when you are confident that the system works correctly.

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

What are some of the risks that motivates testing?

A
  • risk of missing important faults
    risk of incurring failure costs
    -risk of releasing untested or under-tested software
    -risk of losing credibility and market share
    -risk of missing a market window
    -risk of over-testing, ineffective testing
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

How to utilize risk to your benefit in testing?

A

We can use risk to help use determine what requires the most time in testing, what needs to be tested the most.

It can also be used to determine what does not need to be tested currently.

In essence risk can be used to be allocate time and priority to testing different aspects of a system.

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

What are the 4 different levels of test planning?

A

Test policy

Test Strategy

High Level Test Plan

Detailed Test Plan

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

What are qualities of a good test case?

A

Effective - Find the faults

Exemplary - Represents Other tests

Evolvable - Easy to maintain and change.

Economic - Cheap to use.

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

What are the 3 tasks that test specification can be broken down into?

A

Identify - determine ‘what’ is to be tested (identify test conditions) and prioritize

Design - determine ‘how’ the ‘what’ is to be tested (i.e. design test cases)

Build - implement the tests (data, scripts, etc.)

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

What is retesting?

A

This is running the same tests over a sample of code after faults have been supposedly fixed.

(Re-running failed tests)