[go: up one dir, main page]

0% found this document useful (0 votes)
136 views9 pages

STQA UNIT-04 Self Notes

Uploaded by

Ankit Pandey
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)
136 views9 pages

STQA UNIT-04 Self Notes

Uploaded by

Ankit Pandey
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
You are on page 1/ 9

SOFTWARE TESTING AND QUALITY ASSURANCE

UNIT-04: SYSTEM TESTING:


• Functional Testing - Non-Functional Testing,
• Testing- Acceptance Testing, Performance Testing,
• Factors and Methodology for Performance Testing,
• Regression Testing,
• Methodology for Regression Testing,
• Five Views of Software Quality,
• McCall’s Quality Factors and Criteria,
• Relationship between Quality Factors and Criteria,
• Quality Metrics,
• Quality Characteristics,
• Software Quality Standard.

➢ Functional Testing-

Functional testing is a type of testing which verifies that each function of the software
application operates in conformance with the requirement specification. This testing
mainly involves black box testing, and it is not concerned about the source code of the
application.

Every functionality of the system is tested by providing appropriate input, verifying the
output and comparing the actual results with the expected results. This testing involves
checking of User Interface, APIs, Database, security, client/ server applications and
functionality of the Application Under Test. The testing can be done either manually or
using automation.

➢ Non-Functional Testing-
Non-functional testing is a type of testing to check non-functional aspects (performance,
usability, reliability, etc.) of a software application. It is explicitly designed to test the
readiness of a system as per nonfunctional parameters which are never addressed by
functional testing.

TANISHA BANGAR 1
A good example of non-functional test would be to check how many people can
simultaneously login into a software.

Non-functional testing is equally important as functional testing and affects client


satisfaction.

TANISHA BANGAR 2
➢ What is Acceptance Testing?

Acceptance testing, a testing technique performed to determine whether or not the software
system has met the requirement specifications. The main purpose of this test is to evaluate
the system's compliance with the business requirements and verify if it is has met the
required criteria for delivery to end users.

There are various forms of acceptance testing:

• User acceptance Testing


• Business acceptance Testing
• Alpha Testing
• Beta Testing

What is Performance Testing?

Performance testing is a non-functional software testing technique that determines how


the stability, speed, scalability, and responsiveness of an application holds up under a
given workload.
• Speed - The speed at which the application responds.
• Scalability - The maximum user load that the application can handle.
• Stability - The condition of the application under varying loads.

Factors affecting Performance Testing-


• Server speed: CPU, memory, I/O throughput, and so on.
• Server-side local network speed or throughput.
• Server-side distributed architecture.
• Software performance.
• System configuration.
• Security-related configuration etc.

Which methodology is used for performance testing?

NeoLoad. Neotys develop a testing tool which is called Neo Load. The NeoLoad is used
to test the performance test scenarios. With the help of NeoLoad, we can find the
bottleneck areas in the web and the mobile app development process.

TANISHA BANGAR 3
➢ What is Regression Testing & Methodology for Regression Testing?

Regression testing is a black box testing techniques. It is used to authenticate a code change
in the software does not impact the existing functionality of the product. Regression testing
is making sure that the product works fine with new functionality, bug fixes, or any change
in the existing feature.

Regression testing is a type of software testing. Test cases are re-executed to check the
previous functionality of the application is working fine, and the new changes have not
produced any bugs.

Regression testing can be performed on a new build when there is a significant change in
the original functionality. It ensures that the code still works even when the changes are
occurring. Regression means Re-test those parts of the application, which are unchanged.

Regression tests are also known as the Verification Method. Test cases are often
automated. Test cases are required to execute many times and running the same test case
again and again manually, is time-consuming and tedious too.

So, if an application has three functionalities- A, B and C, we make changes only to


functionality C. The correct method to evaluate the whole application would be to test all
three functionalities again. This is mainly because we need to see if the change made to C
impacts the other functions in any way.

➢ Five Views of Software Quality-

• Transcendent View: quality is something that is understood clearly, but it’s not
tangible and can’t be communicated, such as love or beauty.

• Product-Based View: quality refers to the attributes/characteristics or features that a


product has.

• User-Based View: a product has quality if it satisfies the user requirements.

• Manufacturing-Based View: quality is evident in how the product is conformed to


design specifications and manufacturing standards.

• Value-Based View: if a product is perceived to be offering good value for the price, it
possesses good quality.

TANISHA BANGAR 4
➢ McCall’s Quality Factors-

This model classifies all software requirements into 11 software quality factors. The 11
factors are grouped into three categories – Product Operation, Product Revision, and
Product Transition Factors.

• Product Operation Factors − Correctness, Reliability, Efficiency, Integrity, Usability.


• Product Revision Factors − Maintainability, Flexibility, Testability.
• Product Transition Factors − Portability, Reusability, Interoperability.

✓ Product Operation Factors-

• Correctness- These requirements deal with the correctness of the output of the software
system.
• Reliability- Reliability requirements deal with service failure.
• Efficiency- It deals with the hardware resources needed to perform the different
functions of the software system.
• Integrity- This factor deals with the software system security, that is, to prevent access
to unauthorized persons.
• Usability- Usability requirements deal with the staff resources needed to train a new
employee and to operate the software system.

✓ Product Revision Factors-

• Maintainability- This factor considers the efforts that will be needed by users and
maintenance personnel to identify the reasons for software failures, to correct the
failures, and to verify the success of the corrections.
• Flexibility- This factor deals with the capabilities and efforts required to support
adaptive maintenance activities of the software.
• Testability- Testability requirements deal with the testing of the software system as
well as with its operation.

✓ Product Transition Factors-

• Portability- Portability requirements tend to the adaptation of a software system to


other environments consisting of different hardware, different operating systems.

TANISHA BANGAR 5
• Reusability- This factor deals with the use of software modules originally designed for
one project in a new software project currently being developed.
• Interoperability- Interoperability requirements focus on creating interfaces with other
software systems or with other equipment firmware. For example, the firmware of the
production machinery and testing equipment interfaces.

➢ Quality Factors-

A software quality factor is a non-functional requirement for a software program which


enhances the quality of the software program. A quality factor represents a behavioural
characteristic of a system. Correctness, Reliability, Efficiency, Integrity, Usability.

• Correctness- These requirements deal with the correctness of the output of the software
system.
• Reliability- Reliability requirements deal with service failure.
• Efficiency- It deals with the hardware resources needed to perform the different
functions of the software system.
• Integrity- This factor deals with the software system security, that is, to prevent access
to unauthorized persons.
• Usability- Usability requirements deal with the staff resources needed to train a new
employee and to operate the software system.

➢ Quality Criteria-

According to ISO 9126, quality characteristics of software are divided into six criteria:
functionality, reliability, usability, efficiency, maintainability and portability. All these
requirements and quality criteria must be checked by the tester.

• Portability- Portability requirements tend to the adaptation of a software system to


other environments consisting of different hardware, different operating systems.
• Reliability- Reliability requirements deal with service failure.
• Efficiency- It deals with the hardware resources needed to perform the different
functions of the software system.
• Usability- Usability requirements deal with the staff resources needed to train a new
employee and to operate the software system.

TANISHA BANGAR 6
➢ Relationship between Quality Factors and Criteria-
A quality factor represents the behavioural characteristic of a system. A quality criterion is
an attribute of a quality factor that is related to software development.

➢ Quality Metrics-

An objective way to measure, evaluate, and monitor the product and process lifecycle.
Software metrics can be classified into three categories –

• Product metrics − Describes the characteristics of the product such as size,


complexity, design features, performance, and quality level.
• Process metrics − These characteristics can be used to improve the development
and maintenance activities of the software.
• Project metrics − This metrics describe the project characteristics and execution.
Examples include the number of software developers, the staffing pattern over the
life cycle of the software, cost, schedule, and productivity.

➢ Quality Characteristics-

• Usability- It is described as how the user is utilizing a system effectively and the ease
of which users can learn to operate or control the system. The well- known principle of
usability is KISS (Keep It Simple Stupid). Software applications should be user-
friendly.
• Reliability- It is the ability of a system to continue to keep operating over time.
• Availability- It is the ratio of the available system time to the total working time it is
required or expected to function.
• Portability- It is the ability of a software application to run on numerous platforms
such as data portability, hosting, viewing, etc.
• Testability- It shows how well the system or component facilitates to perform tests to
determine whether the predefined test criteria have been met.
• Scalability- It is the ability of a system to handle the demand for stress caused by
increased usage without decreasing performance.
• Flexibility- It is the ability of a system to adapt to future changes.
• Reusability- It is the use of existing software I more than one software with small or
no change. It is a cost-efficient and time-saving quality attribute.

TANISHA BANGAR 7
• Maintainability- It is the ability of a software application to maintain easily and
support changes cost-effectively.
• Supportability- It is the ability of a system that satisfies necessary requirements and
needs to identifying and solving problems.
• Interoperability- It is the ability of two or more systems to communicate or exchange
data easily and to use the data that has been exchanged.
• Performance- It is the ability of a system in the form of responsiveness to various
actions within a certain period of time.

➢ Software Quality Standard-


Contains a framework to evaluate software product quality.

TANISHA BANGAR 8
TANISHA BANGAR 9

You might also like