Victor Anosike
Learning Aim B Unit 13 – Software Testing
Assignment 2
Unit 13: Assignment 2 – Carry out a range of
testing methodologies on a software product to
meet a client’s needs
In this assignment, I have been hired to carry out testing on a software product
that has been previously created whilst meeting the client’s requirements. The
software application will be a pizza-ordering application designed for waiters at
the restaurant to take down people’s orders on a handheld computer device.
Common tools and processes used in software testing
Software testing is the process of evaluating a software programme or computer
system in order to determine its quality, performance, and functionality. This
entails running the programme under multiple settings in order to detect faults,
mistakes, or problems, as well as any differences between predicted and actual
outcomes.
To simplify and enhance testing efforts, several tools and techniques may be
utilised in software testing. The tools and methods utilised are determined by
unique requirements, organisational preferences, and other factors. The proper
tool selection can result in successful procedures and efficient testing of software
systems. I'll go through several tools and procedures in the following sections.:
Bug Tracking Tools – These tools are used to track, document, and
manage software defects or issues discovered during testing. This will
facilitate effective communication among testers, developers, and other
stakeholders.
Test Management Tools – Assists in the management and organisation
of testing procedures, as well as the management of test cases and
defects.
Test Automation Tools – Allows for automated executions, reducing
manual work and testing time. This is useful for repeated activities and
load testing.
Continuous Integration/Continuous Delivery (CI/CD) Tools – It is
possible to automate builds, testing, and deployment while still
maintaining frequent and dependable software releases when using CI/CD.
The tools incorporate code changes and may perform tests automatically.
Selecting a testing methodology – Waterfall
Methodology
Waterfall Methodology and Software
The waterfall methodology is a linear and sequential software development
strategy. A waterfall project progresses through many phases in a descending
flow, with each phase dependent on the completion of the one before it. There is
a high focus on documentation while applying the waterfall technique because
each phase should offer thorough documentation that acts as a historical record
of the project and a reference for future stages.
Waterfall software, either desktop or cloud-based, is completely completed
software that was built utilising the waterfall process. This indicates that the
programme was developed in a sequential and linear manner, allowing discrete
, Victor Anosike
Learning Aim B Unit 13 – Software Testing
Assignment 2
phases to continue based on requirements acquired without overlapping or
repeated cycles. Testing utilising the waterfall process can only be done once
after the development is completed.
Waterfall software can help project managers handle activities since it is a
sophisticated, phased process that demands great attention and collaboration.
Throughout the waterfall process, there are five typical tasks:
Structure Your Processes – This would mean following the six steps in a
sequential order. Requirement gathering: meeting with stakeholders in
order to get and document software requirements, as well as completely
comprehend end-user demands. System design: the general design is
developed based on the requirements, and the design team is involved in
creating particular specifications. Implementation: The use of the design
in actual software development, in which developers create the code and
assemble the programme components. Testing: follows the preceding
step and involves testers ensuring that the programme satisfies the given
criteria and performs correctly. Deployment: Software is made available
for download and usage by end users. Maintenance: Ongoing support
and maintenance of the product is offered, which includes bug fixes,
responding to user comments, and other tasks.
There are currently 4 different types of testing done in waterfall methodology:
Service Testing – A type of software testing that focuses on ensuring the
operation, performance, and dependability of online services. Service
testing ensures that the quality of a programme is up to standard and
dependable, which is a crucial component. Simple Object Access Protocol
(SOAP) and Representational State Transfer (REST) services are also
tested as services.
Application Testing – The process of reviewing and verifying a software
programme to assure its quality, functionality, and performance is also
known as software application testing. To discover problems or difficulties,
testing aspects such as usability and security are used. It can also be
applied in order to meet desired objectives and user expectations.
Automation Testing – This is the use of software tools and scripts to
enable for the automated execution of test cases, allowing for the
comparison of predicted and actual outcomes. To accomplish testing jobs
that demand a substantial amount of time and repetition, specialised
testing frameworks and scripting languages, as well as automation
technologies, would be needed. This would boost efficiency while
decreasing human effort.
Regression Testing – Ensures that previously designed and tested
software continues to work properly when modifications have been made
to the programme. The goal of this testing is to ensure that changes and
bug fixes do not disturb the application's functionality. This practice must
be carried out correctly and on a regular basis in order to preserve the
software's quality and avoid upgrades from affecting its stability or
operation.