0% found this document useful (0 votes)
4 views7 pages

ST - Unit 2

The document discusses the importance of software testing, highlighting its role in risk mitigation, user satisfaction, and cost savings. It also contrasts the Software Development Life Cycle (SDLC) with the Software Testing Life Cycle (STLC), detailing their respective phases and objectives. Additionally, it outlines key deliverables in testing, such as test strategies, plans, and reports, while addressing error handling testing and the benefits of version control systems.

Uploaded by

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

ST - Unit 2

The document discusses the importance of software testing, highlighting its role in risk mitigation, user satisfaction, and cost savings. It also contrasts the Software Development Life Cycle (SDLC) with the Software Testing Life Cycle (STLC), detailing their respective phases and objectives. Additionally, it outlines key deliverables in testing, such as test strategies, plans, and reports, while addressing error handling testing and the benefits of version control systems.

Uploaded by

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

Importance of Software Testing

 Risk Mitigation – Testing helps identify defects and failures early in the
development process when they are less expensive to fix. This reduces project risks
related to quality, security, performance, etc.
 Confidence – Executing a well–planned software test strategy provides confidence
that the software works as intended before its release.
 Compliance – Testing can ensure that software adheres to standards, regulations,
and compliance requirements. This is especially critical for safety–critical systems.
 User Satisfaction – Rigorous testing from a user perspective can verify usability,
functionality, and compatibility. This increases customer/user satisfaction and
reduces negative impacts to an organization’s reputation or finances from poor
quality products.
 Optimization – Testing provides vital feedback that can be used to continuously
improve software quality, user experience, security, performance and other product
attributes.
 Cost Savings – Investing in testing activities reduces downstream costs related to
defects found post–release. It is much cheaper to find and fix bugs earlier in the
development cycle.

Difference between SDLC and STLC


In the below table, we have listed some of the important difference between
the Software Development Life Cycle and Software Testing Life Cycle:
S.N Comparison SDLC STLC
O basis

1. Explanations It is primarily connected to software It is mainly linked to software


development, which means that it is testing, which means that it is a
the procedure of developing a software testing process that
software application. contains various phases of the
testing process.

2. Representation SDLC stands for Software STLC stands for Software Testing
Development Life Cycle. Life cycle.

3. Resources While performing the SDLC The STLC process needed a


process, we needed a greater smaller number of testers to
number of developers to complete complete the testing process.
the development process.

4. Focuses on Besides the development phase, The STLC concentrate only on


other phases like testing are also testing the software.
included.

5. Objective The objective of the Software The objective of the Software


development life cycle is to testing life cycle is to complete the
complete the development of testing of software successfully.
software successfully.
6. Help in The SDLC will help us to develop a The STLC will helps to create the
good quality software product. software bug-free.

7. Different phases The various phase includes The various phase includes
in Software Development Life in Software Testing Life Cycle are
Cycle are as follows: as follows:
o Requirements Collection o Requirement collection or
o Feasibility Study System study

o Design o Test Plan

o Programming or Coding o Write test case

o Testing o Traceability Matrix

o Installation o Defect Tracking

o Maintenance o Test Execution Report


o Retrospect meeting

8. Requirement In the SDLC Requirement In the Requirement Analysis phase


collection phase collection phase, the BA [Business of the STLC, the QA [ Quality
Analyst] and PA [ Product Assurance]
Analyst] will collect the team will study requirement
requirements and interpret business documents and prepare the System
language into software language. Test Plan.

9. Designing phase Based on the requirement Generally, in STLC, the Test


understanding, the development Architect or a Test Lead plan the
team will develop the HLD [High- test strategy.
Level Design] and LLD [Low- And also finds the testing points.
Level Design] of the software.

10. Coding phase In the SDLC coding phase, the In STLC, the QA team writes the
developer will start writing the code test scenarios to authenticate the
as per the designed document and quality of the product.
beginning of building the software.

11. Environment After writing the code, the Based on the prerequisites, the Test
Set up development team sets up a test team confirms the environment set
environment with the developed up. And do one round of smoke
product to validate the code. testing to ensure that the
environment is stable for the
product and ready for testing.

12. Testing Phase Once the environment has been set, Based on the test cases, the tester
the test engineer will perform will do one round of integration
various types of testing, such as and system testing.
Unit, Integration, While performing the testing, if
System, Retesting, Regression they encounter with any bugs, it
testing, and so on. will be reported and fixed after the
And the development team is also retesting.
involving to fixing the bugs and
report back to the tester.

13. Deployment/ In the SDLC deployment phase, In STLC, the Smoke and sanity
Product Release when we received sign-off from testing are performed in the
phase various testing teams, the production environment as soon as
application is deployed or installed the product is deployed.
in a production environment for real And the testing team will prepare
end-users. the test reports and matrix to
analyze the product.

14. Maintenance Once the product has been To check maintenance code
Phase deployed, the development team deployed, the QA team performs
includes support and release the regression suites.
updates.

15. Performed The SDLC phases are done before The STLC phases are completed
the STLC phases. after SDLC phases.

Deliverables

Test Strategy
It defines the scope, risks, quality criteria, testing techniques, resources, and timelines,
providing a strategic view of how testing will be conducted throughout the project.

Test Plan
The Test Plan is a detailed document that describes the testing approach, objectives, and
methodologies. It includes the scope of testing, roles, timelines and test schedule, resource
allocation, and test environment requirements.

Test Cases/Test Scripts


Just as a doctor prescribes a specific treatment regimen with detailed instructions, software
testers create Test Cases or Test Scripts. These detailed instructions guide the testing process,
specifying what to test, what data to use, and the expected outcomes. They are the treatment
regimen for your software.
Test cases/scripts detail the step-by-step instructions for executing tests, including input data,
and expected results.

Test data
Test Data in software testing provides the necessary input and configurations to execute tests.
It’s like the patient’s medical history, helping testers understand the software’s behaviour
under various conditions.
Test Data encompasses the input values, configurations, and scenarios used during testing.

Test summary report


Similarly, a Test Summary Report tracks the progress of testing. It provides an overview of
the testing effort, including pass/fail results, coverage, and any issues encountered..
The Test Summary Report provides a high-level overview of the testing activities and results.
It includes key metrics, such as test coverage, pass/fail status, and any outstanding issues.

Test Closure Report


In software testing, the Test Closure Report is akin to the discharge summary, signalling the
readiness for deployment. It marks the end of the testing phase, summarizing the entire
testing effort, lessons learned, and recommendations for future projects.

Error Handling testing


Test Environment Set Up: Test environment is set according to the software
testing technique so that the testing process can run smoothly.

Test Case Generation: In this software testing test case generation is nothing but
making different test cases which may cause error.

Test Case Execution: After the test case generation, real testing process begins.
This is the most prominent part of the testing process.

Result and Analysis: After the execution of the test case, its result is analyzed. It
includes the checking of the inconsistency in the expected output for the
generated test case.

Re-test: If the testing is failed then after the analysis once more all the above
steps are performed to test the system.

Advantages of Error handling testing:


 It helps in construction of an error handling powered software.
 It makes the software ready for all circumstances.
 It developes the exception handling technique in the software.
 It helps is maintenance of the software.
Disadvantages of the Error handling testing

 It is costly as both the developing and testing team is involved.


 It takes lot of time to perform the testing operations.
Benefits of the version control system:

 Enhances the project development speed by providing efficient collaboration,


 Leverages the productivity, expedites product delivery, and skills of the
employees through better communication and assistance,
 Reduce possibilities of errors and conflicts meanwhile project development
through traceability to every small change,
 Employees or contributors of the project can contribute from anywhere
irrespective of the different geographical locations through this VCS,
 For each different contributor to the project, a different working copy is
maintained and not merged to the main file unless the working copy is
validated. The most popular example is Git, Helix core, Microsoft TFS,
 Helps in recovery in case of any disaster or contingent situation,
 Informs us about Who, What, When, Why changes have been made.

You might also like