Chapter 1 Flashcards

1
Q

What is testing?

A
  • Assess the quality of the software ⇒ Avaliar a qualidade

- Reduce the risk of software failure in operation

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

Dynamic and static

A

Dynamic testing → running the software

Static Testing → design, weight, I can read the manual, review the user requirements

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

Validation and Verification

A

Validation → requirements as user (building the right product) → Care about the customer, what the customer wants

Verification → security , data (Building the product right) → Static testing activities, unit testing and integration testing

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

Test process

A

Test planning-Test Monitoring & Control-Test Analysis-Test Design-Test Implementation-Test Execution-Test Completion

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

Product right / right product

A

“Building the product right” checks that the specifications are correctly implemented by the system while

“building the right product” refers back to the user’s needs.

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

Objectives of Testing

A
  • Work-product Evaluation
  • Requirements Fulfillment
  • Building Confidence
  • Providing Information to Stakeholders
  • Preventing Defects
  • Finding Defects
  • Reduce Risk
  • Compliance with Laws
  • Objectives may vary
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Difference between Testing and Debugging

A
  • Testing → send a defect bug to the developer
  • Debugging → Remove the bug ⇒ The process of finding, analyzing and removing the causes of failures in the software.
  • Confirmation Testing → reproduce the same test
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is the definition of debugging?

A

Identifying the cause of a defect, repairing the code and checking the fix is correct

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

When test cases are designed early in the lifecycle, verifying the test basis via the test design, which common test objective is being achieved?

A

Preventing defects

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

Which of the following statements is the MOST valid goal for test team?

A

→ Cause as many failures as possible so that faults can be identified and corrected

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

Which of the following statements BEST describes the difference between testing and debugging?

A

→ Dynamic testing shows failures caused by defects. Debugging finds, analyses, and removes the causes of failures in the software.

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

Why is Testing Necessary?

A

Testing is necessary because if we don’t have a good testing process we might lose our business reputation. |

Testing is necessary because having a good testing process helps us in providing information to stakeholders

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

Tester’s contribution to the success

A
  • Review the requirements
  • Review the design
  • Review the code
  • Review and test the final product
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Difference between Quality Assurance and Quality Control

A

Quality Management includes all activities that direct and control and organization with regard to quality.

Quality Assurance is typically focused on adherence to proper processes. Cares about whole project.

Proper processes → Work products of higher quality → Defect Prevention

Quality Control involves various activities, including test activities, that support the achievement of appropriate levels of quality. Cares about the final product

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

Errors, Defects (bug), and Failures

A

Error/Mistake → humans make mistakes or errors

Defect (fault-bug) → result of the error

Failures mean that the software isn’t able to perform its function

Not all defects will a Failure.

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

Why do errors happen?

A
  • Time pressure
  • Human fallibility
  • Lack of Experience
  • Miscommunication
  • Complexity of work products
  • System Interactions
  • New technologies
  • Environmental conditions
17
Q

False Positive and False Negative

A

False positive, we talk about finding a defect because it is called positive. Found a defect but we were wrong. Was not a defect

False negative, mean that we didn’t find a defect, but there is a defect in the functionality. The developer or the client test and find a defect in it.

18
Q

Root Cause Analysis and Process Improvement

A

The root causes of defects are the earliest actions or conditions that contributed to creating the defects.

19
Q

Recall the activity that removes the cause of a failure.

A

Debugging

20
Q

Why is software testing sometimes required for legal reasons?

A

Contracts may specify testing requirements that must be fulfilled

21
Q

Seven Testing Principles

A
  1. Testing shows the presence of defects, not their absence. ⇒ Testing reduces the probability of undiscovered defects but it is not a proof of correctness.
  2. Exhaustive Testing is impossible ⇒ Testing everything is not feasible except for trivial cases
  3. Early Testing saves time and money (shift left) ⇒ To find defects early, both static and dynamic test activities should be started as early as possible.
  4. Defects cluster together ⇒ A small number of modules usually contains most of the defects discovered during pre-release testing
  5. Beware of pesticide paradox ⇒ If the same tests are repeated over and over again, these tests no longer find any new defects
  6. Testing is context dependent ⇒ Testing is done differently contexts.
  7. Absence of Error is a fallacy ⇒ It is a fallacy to expect that just finding and fixing a large number of defects will ensure the success of a system.
22
Q

Test Activities and Tasks

A
  • Test planning
  • Test monitoring and control
  • Test analysis
  • Test design
  • Test implementation
  • Test execution
  • Test completion
23
Q

Test Planning

A

Defining Objectives of Testing and the approaches to meet these objectives

Test Plan

24
Q

Test Monitoring and Control

A
  1. on-going comparison of actual progress against the test plan using any test monitoring metrics defined in the test plan
  2. taking actions necessary to meet the objectives of the test plan
  3. Test progress against the plan is communicated to stakeholders in test progress reports

Test control involves taking actions necessary to meet the objectives of the test plan.

25
Q

Test Analysis

A
  1. What to Test
  2. Analyze the test basis ⇒ requirements specifications, design, code, risk analysis reports
  3. Define and prioritize test conditions
  4. capturing bi-directional traceability

The application of black-box, white-box, and experience-based test techniques can be useful in the
process of test analysis

identification of defects during test analysis is an important potential benefit

26
Q
  1. Test Design
A
  1. How to Test
    1. Design and prioritize test cases
    2. Identify test data
    3. Design test environment → software, hardware, and network
27
Q

Test Implementation

A
  1. Do we now have everything in place to run the tests?
  2. Develop and prioritize test procedures
  3. Create Test suites, and arrange them in the test execution schedule
  4. Build test environment
    ISTQB ⇒ First to write the test cases. then add them to the test suite

Test design and test implementation tasks are often combined

28
Q

Test Execution

A
  1. Run the test suites
  2. Compare the actual result with expected result
  3. Report defects
  4. Confirmation and regression testing
29
Q

Test Completion

A
  1. Collect data from completed test activities
  2. Occurs at project milestones
  3. Check Defect Reports
  4. Create Test Summary Report ⇒ Is a work product that happens in monitoring and control and also at test completion.
    BUT test progress report only happens in test monitoring and control.
  5. Hand over the testware

Checking whether all defect reports are closed,
Analyzing lessons learned from the completed test activities to determine changes needed for future iterations, releases, and projects
Using the information gathered to improve test process maturity

30
Q

Test Work Products

A

Test Planning → Test Plans

Test Monitoring and Control → Test Progress / Summary Reports

Test Analysis → Test Conditions - Test Charters

Test Design → Test Cases - Test Data

Test Implementation → Test Procedures - Test Suites - Test Execution Schedule

Test Execution → Status of Test cases - Defect Reports

Test Completion → Test Summary Reports - Change Requests

31
Q

Psychology of Testing

Ways to communicate well include the following examples

A
  • Identifying defects may be perceived as criticism of the product and of its author.
  • Confirmation bias can make it difficult to accept information that disagrees with currently held beliefs.
  • Cognitive biases may make it difficult for people to understand or accept information produced by testing

• Start with collaboration rather than battles. Remind everyone of the common goal of better quality
systems.

• Emphasize the benefits of testing. For example, for the authors, defect information can help them
improve their work products and their skills. For the organization, defects found and fixed during
testing will save time and money and reduce overall risk to product quality.

• Communicate test results and other findings in a neutral, fact-focused way without criticizing the
person who created the defective item. Write objective and factual defect reports and review
findings.

• Try to understand how the other person feels and the reasons they may react negatively to the
information.

• Confirm that the other person has understood what has been said and vice versa.