0% found this document useful (0 votes)
23 views19 pages

ST U1L5 (Role of Tester - Testing As A Process)

Uploaded by

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

ST U1L5 (Role of Tester - Testing As A Process)

Uploaded by

bright.keswani
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 19

BCECCE6104 (Software Testing)

UNIT - I
Unit Unit Details

1. Testing Methodology

● Introduction to Effective Software Testing


● Evolution of Software Testing, Software Testing Myths
● Goals of Software Testing
● Psychology for Software Testing
● Software Testing Definitions
● Model for Software Testing
● Role of tester
● Testing as a Process
● Overview of Testing maturity model
● Defects -Hypothesis and tests
Role of Tester in the Testing Process

• The role of a tester is crucial in ensuring that software


products meet the required standards of quality,
functionality, and performance.

• Testers are responsible for evaluating the software to


identify defects, validate requirements, and ensure
that the product meets user expectations.
1. Requirement Understanding and Test Planning

Requirement Analysis

Testers start by thoroughly understanding the


software requirements, including functional, non-
functional, business, and user requirements.
They identify potential test scenarios based on these
requirements to ensure they align with the customer’s
Test Planning needs.

Testers contribute to creating a test plan that outlines the testing objectives,
scope, resources, schedules, and the overall testing strategy.
They also define the test cases, test data, and the approach to be used for
different types of testing.
2. Test Case Design and Development

Test Case Creation:


Based on the requirements and test plan, testers design detailed test cases
that cover all possible scenarios.
These test cases help evaluate the functionality of the software in various
contexts.

Test Environment Setup:


Testers ensure that the required test environment is set up, including
necessary hardware, software, and network configurations.
The test environment should closely mimic the production environment to
identify defects that may arise in real-world conditions.
3. Test Execution

Manual or Automated Testing:


Testers execute test cases, either manually or using automated testing
tools, to validate the software.
During this phase, they observe the system's behavior and document
discrepancies or defects, if any.

Defect Identification:
Testers identify and document defects, inconsistencies, or deviations
from expected behavior.
They also re-produce defects to understand their cause, assign severity
levels, and provide detailed defect reports to the development team.
4. Reporting and Defect Management

Defect Logging:
Testers use defect tracking tools to log issues identified during testing.
Each defect is categorized, and detailed reports are generated, which
include steps to reproduce the issue, expected behavior, actual behavior,
and severity level.

Communication with Developers:


Testers work closely with developers to ensure that the defects are
understood, and necessary fixes are implemented.
They collaborate to provide feedback and ensure that the fixes are
validated through re-testing.
5. Regression and Re-testing

Regression Testing:
When updates are made to the software, testers perform
regression testing to ensure that the changes do not negatively
impact existing functionality.
This involves re-executing previously successful test cases to
validate the stability of the system.

Re-testing:
After defects are fixed, testers retest the affected parts of the
software to verify that the changes have resolved the issues
without introducing new ones.
6. Test Closure

Test Completion:
Testers evaluate the success of the testing process based on predefined exit criteria, such
as the number of defects found, test coverage, and the overall quality of the product.
If the product meets the acceptance criteria, testing is considered complete.

Test Reporting and Documentation:


After test execution, testers provide test reports that summarize the testing process, test
results, defect metrics, and overall quality of the software.
These reports serve as documentation for stakeholders and help in decision-making
regarding release readiness.
Lessons Learned:
Testers reflect on the testing process to identify areas for improvement in future projects.
They document lessons learned, which can help refine the testing process, improve
Testing as a Process
• Testing is not a one-time event but an ongoing process
that spans the entire software development lifecycle.

• It is integrated with every stage of software


development, from requirement analysis to design,
development, and release.
How testing functions as a Process

Early Involvement:
Testing should start as early as possible in the software
development lifecycle.
Testers work alongwith developers and business analysts
to ensure that testing requirements are incorporated early,
and potential defects can be identified and resolved
proactively.
Iterative Process:

Testing is iterative and continuous, often evolving


with the development process.
In methodologies like Agile, testers are involved in
every iteration, providing continuous feedback and
ensuring that the software is always ready for
delivery.
Each cycle builds upon the last, leading to more
refined and high-quality software.
Continuous Feedback:

Testing provides continuous feedback on the


software’s quality, enabling teams to address
issues promptly.
Testers validate that the software works as
expected at each stage of development and
ensure that changes do not disrupt the
system’s overall stability.
Collaboration:

Testing is a collaborative process that requires


communication between testers, developers,
product owners, and other stakeholders.
Regular collaboration ensures that the testing
effort aligns with business goals and user
expectations.
Risk-Based Testing:

Testers prioritize testing efforts based on the risk


associated with various components or features of
the software.
High-risk areas that are more likely to cause
defects or have a greater impact on the system
are tested more thoroughly, while low-risk areas
may receive less attention.
Adaptability:

As software evolves, testing processes must adapt


to changes in requirements, design, and
implementation.
Testers must remain flexible and adjust their
testing approach to accommodate new
functionality, features, or technologies.
Therefore,
• The role of a tester in the software development process is vital
for ensuring software quality.
• Testers contribute to each stage of development, from
requirements analysis and test planning to execution and
reporting.
• They focus on identifying defects, validating functionality, and
ensuring that the final product meets the specified requirements.
• Testing is an iterative, continuous process that works alongside
development, providing valuable feedback to improve software
quality and reduce the risk of defects in the final product.
RECOMMENDED STUDY MATERIAL

S. No Text Books: Author Edition Publication

1. Software Testing-Principle and Practices Naresh Chauhan 3rd Oxford

2. Fundamentals of Software Engineering, RajibMall PHI 2018

Reference Book

1. The Art of Software Testing, 3rd Edition by Glenford J. Myers, Corey Sandler, Tom Badgett.

2. Software Testing, 2nd Edition by Ron Patton

Online Resources

1. https://www.javatpoint.com/software-testing-tutorial
2. https://www.guru99.com/software-testing.html

You might also like