Fundamentals of Software Testing Flashcards

1
Q

What categories can most software issues be divided into?

A
  • Error
  • Defect
  • Failure
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is the definition of an error?

A

An error (or mistake) is an action performed by a person that leads to an incorrect result. This can be the user or someone buiulding the software.

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

What is the definition of a defect?

A

A defect is a flaw in a component or a system that can cause the system to fail to perform its required action.

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

What is the definition of a failure?

A

A failure is a deviationm of a system from its expected delivery. A defect causes a system to fail.

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

What is root cause analysis?

A

Root cause analysis involves trying to track the failure of a system all the way back to its root cause.

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

What are the four stages off a products lifecycle?

A
  • Analysis
  • Design
  • Development
  • Implementation
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is testing for functional attributes?

A

This is to ensure that the product performs an expected task

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

What is testing for non-functional attributes?

A

Is testing to measure how well or fast a task is performed and is normally measured by metrics

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

What are the perceptions of quality that a customer will be looking for?

A
  • Physical Features
  • Usability
  • Industry Standards
  • Subjective Responses
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is Dynamic Testing?

A

Dynamic testing is when you conduct tests while running a software program.

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

What is static testing?

A

This includes reviewing software related documentation and source code.

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

What does development testing include?

A
  • Component testing
  • Integration testing
  • System testing
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is acceptance testing?

A

This is to verify that the software works as inticipated, gaining confidence that the requirements have been met. This is done primarily to gauge the risk of releasing a system at a given time.

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

What is maintenance testing?

A

This is to ensure no new defects have been introduced during development changes.

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

What are the main objectives of operational testing?

A
  • Realiability - A set of attributes representing the capabilities of the software to maintain a level of performance under conditions for a period of time.
  • Availability - Is where the software is ready for use whenever required.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is DefectDensity?

A

Is an attribute that can be calculated by dividing the number of design defects by a measure of the product size such as function points of number of source lines of code.

17
Q

What are knock-on-defects?

A

They are defects that result from a a newly introduced correction that results in a chain of defects on various parts of the software

18
Q

What is the pesticide paradox?

A

The tendency for defect clusters to change over time, meaning that the same set of tests conducted repeatedly will fail to disover new defects,

19
Q

What are the three objectives of software testing?

A
  • Uncovering defects
  • Gaining confidence about the level of quality of the product
  • preventing defects
20
Q

What is regression testing?

A

This is to uncover defetcs that may have been introduced to the software from previous fixes.

21
Q

What are the three general software testing principles?

A
  1. Testing shows presence of defects
  2. Exhastive testing is impossible
  3. Confusing an absence of errors with product fit is a fallacy
22
Q

What does AUT stand for?

A

Apllication Under Test

23
Q

What are the four principles of applied testing?

A
  • Early Testing
  • Defect Clustering
  • Pesticide Paradox
  • Testing should be context dependent
24
Q

What does SDLC stand for?

A

Software Development Life Cycle

25
Q

What is the Pareto principle?

A

This principle states that about 80% of defects will be found in approximiately 20% of the modules.

26
Q

What are the five fundamental phases in the software testing process?

A
  1. Test planning an control
  2. Test analysis and design
  3. Test implementation and execution
  4. Evaluating exit criteria and reporting
  5. Test closure activities
27
Q

What should you do in the Analysis stage of the Software testing process?

A
  • Review the test basis and identify test conditions
  • Design tests and evaluate testability
28
Q

What can settting meaningful exit criteria help to acheive?

A
  • Ensure test efficiency and effectiveness
  • Priotitize and execute testing activites
  • Evaluate current activities in the testing process and decide steps for further action
  • Suggest corrective measures for incomplete and faulty efforts
  • Identify plausible risks for your test project
29
Q

What is coverage criteria?

A

This helps you decide test cases that must be included during the exit criteria evaluation process.

30
Q

What is acceptance criteria?

A

Helps check whether the software has passed or failed in the overall process.

31
Q

What activites would you carry out during Test closure?

A
  1. Checking deliverables
  2. archiving testware
  3. submitting testware to maintenance team
  4. evaluating the overall test process
32
Q

When is exit criteria set?

A

During test planning

33
Q

Why is it important for the person testing to have an objective mindset?

A

A person who helped develop the software may miss defects because he may approach the product with a bias based on the effort put in and personal involvement in development.

34
Q

What are the only advantages of self-review as a testing method?

A

Early defect detection and cost effectiveness

35
Q

What can help communication amongs team members during the test process be more effective?

A
  • Defects and incidents are reported neutrally
  • Explanation of how the end user benefits
  • Reinforcing the need for collaboration
36
Q

What are the categories for code of ethics for engineers according to the ISTQB

A
  • Public
  • Client and Employer
  • Product
  • Judgement
  • Management
  • Profession
  • Colleagues
  • Self
37
Q

How can testers and developers bridge the communication gap?

A
  • Understand and appreciate each others roles and responsibilities in the process
  • Communicate and coordinate with each other throughout the lifecycle
  • Initiate conversations with programmers as testers and not wiat for them to start inquiring about reports
  • Share plans, drafts, schedules, design documents and prototypes
  • Provide feedback for developers appreciating their good work and reporting defects objectively
38
Q
A