Software Testing Fundamentals Flashcards

1
Q

Q: What is the purpose of software testing?

A

A: To find errors and verify that the software satisfies specified requirements.

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

Q: What are the entities involved in the testing problem?

A

A: P (Program), S (Specification), O (Observed behavior), T (Test cases).

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

Q: What is the significance of the testing axiom “Testing cannot show that bugs do not exist”?

A

A: It emphasizes that testing can only reveal the presence of bugs, not prove their absence.

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

Q: Why is exhaustive testing considered impossible?

A

A: Because it is impractical to test all possible inputs and scenarios in a complex software system.

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

Q: What are the three types of errors in software testing?

A

:

Error: Human action leading to an incorrect result.
Fault (Defect/Bug): Incorrect code or data definition causing failure.
Failure: Deviation from expected behavior due to faults

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

Q: What is the Pareto principle in software testing?

A

A: 80% of the bugs are often found in 20% of the code.

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

Q: Why is it important to prioritize tests by risk?

A

A: High-risk areas of the software are more likely to cause critical failures, so they should be tested first.

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

Q: What is the “pesticide paradox”?

A

A: Repeated execution of the same tests will eventually stop finding new bugs.

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

Q: What are the different levels of testing?

A

Unit Testing: Testing individual components.
Integration Testing: Testing interactions between components.
System Testing: Testing the entire system as a whole.

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

Q: What is regression testing?

A

A: Testing previously tested components to ensure they still work after changes.

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

Q: What are the common elements of a test plan?

A

A: Entry criteria, testing activities, schedule, task assignments, test strategy, tools, exit criteria.

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

Q: What is a test case?

A

A: A set of inputs, execution conditions, and expected results used to verify a specific aspect of software functionality.

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

Q: What is test coverage, and why is it important?

A

A: Test coverage measures how much of the code is tested. It helps assess the thoroughness of the test suite.

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

Q: What is the difference between statement coverage and branch coverage?

A

Statement Coverage: Tests each statement at least once.
Branch Coverage: Tests all possible branches in the code.

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