0% found this document useful (0 votes)
28 views2 pages

CTAL-TM Exam Study Guide

The document provides exam-oriented notes on software testing, covering key concepts such as faults, errors, and failures, as well as testing objectives and principles. It explains verification and validation, white box and black box testing, and outlines the testing life cycle and test case design. Additionally, it lists frequently asked exam questions to aid in study preparation.

Uploaded by

armanmohd50584
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views2 pages

CTAL-TM Exam Study Guide

The document provides exam-oriented notes on software testing, covering key concepts such as faults, errors, and failures, as well as testing objectives and principles. It explains verification and validation, white box and black box testing, and outlines the testing life cycle and test case design. Additionally, it lists frequently asked exam questions to aid in study preparation.

Uploaded by

armanmohd50584
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Software Testing - Exam-Oriented Notes

1. Basics of Software Testing - Faults, Errors, and Failures

- Faults: A defect in the system that may cause failures.


- Errors: Mistakes in coding or logic that lead to faults.
- Failures: When the software does not function as expected.
- Exam Questions:
- Define fault, error, and failure. (April 2022)
- Write two differences between bugs, faults & failures. (April 2022)

2. Testing Objectives & Principles

- Objectives: Ensuring correctness, quality, and reliability of software.


- Principles:
1. Testing shows the presence of defects.
2. Exhaustive testing is impossible.
3. Early testing saves time and cost.
- Exam Questions:
- List two objectives of software testing. (Nov 2023)

3. Verification and Validation (V&V)

- Verification: Are we building the product right? (Reviews, walkthroughs)


- Validation: Are we building the right product? (Testing actual product)
- Exam Questions:
- Define verification and validation. (Nov 2022)
- Explain V-model with a diagram. (April 2022, Nov 2023)

4. White Box & Black Box Testing

- White Box Testing: Based on internal code structure. (Path Testing, Control Flow)
- Black Box Testing: Based on functionality. (Boundary Value Analysis, Equivalence Partitioning)
- Exam Questions:
- Explain Equivalence Partitioning. (April 2022)
- Difference between Black Box & White Box Testing. (Nov 2022, Nov 2023)

5. Test Case Design & Testing Life Cycle

- Test Case Design: Steps to verify software functionality (Desktop, Mobile, Web apps).
- Testing Life Cycle: Includes Test Planning, Design, Execution, Reporting.
- Exam Questions:
- What is a test case? Explain with an example. (April 2022, Nov 2023)
- Write a test plan for Flipkart login page. (April 2023)

Frequently Asked Exam Questions

1. Define software testing and its objectives.


2. Differentiate between testing and debugging. (Nov 2022)
3. Explain performance testing and its steps. (April 2022)
4. What is Regression Testing? (April 2022, Nov 2023)
5. Describe different levels of testing. (Unit, Integration, System, Acceptance)
6. Explain the V-Model with a diagram. (Frequently Asked)

Common questions

Powered by AI

Early testing helps identify defects and errors at an early stage, which reduces the potential for costly fixes and delays later in the software development process. By detecting issues early, teams can prevent the propagation of faults and failures, ultimately saving time and resources otherwise needed for extensive reworking.

Black Box Testing focuses on testing the functionality without considering the internal code structure, using techniques like Boundary Value Analysis and Equivalence Partitioning. White Box Testing examines the code's structural quality and logic, using techniques such as Path Testing and Control Flow. While Black Box Testing is driven by user requirements, White Box Testing requires a deep understanding of the code.

Regression testing ensures that recent changes or additions to the software have not adversely affected existing functionalities. It involves re-testing previously tested parts of the software after modifications. This step is crucial in maintaining software quality over successive releases or updates.

Verification involves checking if the product is being built correctly through reviews and walkthroughs, ensuring compliance with design specifications. Validation, on the other hand, assesses whether the right product is built by testing it in real scenarios. Verification is a static process without executing code, while validation is a dynamic evaluation of the actual product.

Exhaustive testing is considered impossible because it requires testing all possible inputs and scenarios, which is impractical due to constraints in time and resources. The complexity and variability of modern software systems make it infeasible to cover every possible case. This principle underscores the importance of strategic test design rather than trying to test everything.

The different levels of testing include Unit Testing, Integration Testing, System Testing, and Acceptance Testing. Unit Testing focuses on individual components, Integration Testing on interfaces between components, System Testing on the overall behavior of the system, and Acceptance Testing on product suitability for delivery. Each level targets specific issues, ensuring comprehensive coverage and reliability of the software.

The V-model highlights the relationship between each phase of the development life cycle and its corresponding testing phase, structured as a 'V'. The left side represents verification activities in terms of planning, design, and coding stages, while the right side represents validation activities aligning with unit, integration, system, and acceptance testing. This model ensures parallel development and testing activities, improving defect detection efficiency.

A comprehensive test case design includes a clear and concise description of the test case objective, preconditions, test steps, expected results, and post-conditions. It should also cover different test environments (desktop, mobile, web apps) and be repeatable, allowing for consistent results in testing software functionality.

The key differences between faults, errors, and failures are as follows: Faults are defects in the system that may cause failures. Errors are mistakes in the code or logic that lead to faults. Failures occur when the software does not function as expected due to the presence of faults. Thus, errors contribute to faults, which in turn can result in failures.

Testing and debugging serve different purposes; testing identifies the presence of defects without fixing them, while debugging involves analyzing and correcting the defects identified during testing. Distinguishing them is important because they require different skills and tools, and overlooking this difference can lead to inefficiencies in resolving software issues.

You might also like