0% found this document useful (0 votes)
4 views

Non-functional testing

Behavior Non-functional Testing verifies the non-functional requirements of software applications, focusing on aspects not covered by functional testing. Its objectives include increasing usability, reducing production risk and costs, optimizing installation, and enhancing product knowledge. Various techniques such as compatibility, performance, security, and usability testing are employed to assess parameters like security, reliability, efficiency, and scalability.

Uploaded by

Arundhathi
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Non-functional testing

Behavior Non-functional Testing verifies the non-functional requirements of software applications, focusing on aspects not covered by functional testing. Its objectives include increasing usability, reducing production risk and costs, optimizing installation, and enhancing product knowledge. Various techniques such as compatibility, performance, security, and usability testing are employed to assess parameters like security, reliability, efficiency, and scalability.

Uploaded by

Arundhathi
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Behavior Non-functional Testing is a type of Software Testing that is performed to verify the non-

functional requirements of the application. It verifies whether or not the system's behavior is as per
the requirement. It tests all the aspects that are not tested in functional testing. Non-functional
testing is a software testing technique that checks the non-functional attributes of the system. Non-
functional testing is defined as software testing to check non-functional aspects of a software
application. It is designed to test the readiness of a system as per nonfunctional parameters which
are never addressed by functional testing. Non-functional testing is as important as functional
testing.

Objectives of Non-functional Testing


The objectives of non-functional testing are:
 Increased usability: To increase usability, efficiency,
maintainability, and portability of the product.
 Reduction in production risk: To help in the reduction of
production risk related to non-functional aspects of the
product.
 Reduction in cost: To help in the reduction of costs
related to non-functional aspects of the product.
 Optimize installation: To optimize the installation,
execution, and monitoring way of the product.
 Collect metrics: To collect and produce measurements
and metrics for internal research and development.
 Enhance knowledge of product: To improve and
enhance knowledge of the product behavior and
technologies in use.
Non-Functional Testing Techniques
 Compatibility testing: Compatibility testing is a type of
testing to ensure that a software program or system is
compatible with other software programs or systems. For
example, in this, the tester checks that the software is
compatible with other software, operating systems, etc.
 Compliance testing: Compliance testing is a type of
testing to ensure that a software program or system meets
a specific compliance standard, such as HIPAA or Sarbanes-
Oxley. It is often the first type of testing that is performed
when accessing the control environment.
 Endurance testing: Endurance testing is a type of testing
to ensure that a software program or system can handle a
long-term, continuous load. For example for the banking
application, the application is tested to know if the system
can sustain under the continuous expected load.
 Load testing: Load testing is a type of testing to ensure
that a software program or system can handle a large
number of users or transactions. For example, Running
multiple applications on the computer simultaneously.
 Performance testing: Performance testing is a type of
testing to ensure that a software program or system meets
specific performance goals, such as response time or
throughput. For example, organizations perform
performance tests in order to identify performance-related
bottlenecks.
 Recovery testing: Recovery testing is a type of testing to
ensure that a software program or system can be
recovered from a failure or data loss. For example, when
the application is running and the computer is restarted,
check the validity of the application’s integrity.
 Security testing: Security testing is a type of testing to
ensure that a software program or system is secure from
unauthorized access or attack. For example, Organizations
perform security testing to reveal flaws in the security
mechanism of the information system.
 Scalability testing: Scalability testing is a type of testing
to ensure that a software program or system can be scaled
up or down to meet changing needs. For example, to
measure the application’s capability to scale up or scale
out in terms of non-functional capability.
 Stress testing: Stress testing is a type of testing to
ensure that a software program or system can handle an
unusually high load. For example, extremely large numbers
of concurrent users try to log into the application.
 Usability testing: Usability testing is a type of testing to
ensure that a software program or system is easy to use.
For example, on the e-commerce website, it can be tested
whether the users can easily locate the Buy Now button or
not.
 Volume testing: Volume testing is a type of testing to
ensure that a software program or system can handle a
large volume of data. For example, if the website is
developed to handle traffic of 500 users, volume testing
will whether the site is able to handle 500 users or not.
 Failover testing: Failover testing validates the system’s
capability to allocate sufficient resources toward recovery
during a server failure.
 Portability testing: Portability testing is testing the ease
with which the application can be moved from one
environment to another.
 Reliability testing: Reliability testing checks that the
application can perform a failure-free operation for the
specified period of time in the given environmental
conditions.
 Baseline testing: Baseline testing is used to make sure
that the application performance is not degraded over time
with new changes.

 Documentation testing: Documentation testing is a type


of software testing that involves testing the documented
artifacts developed before or during the software testing
process.
 Localization testing: Localization testing is a type of
software testing that is performed to verify the
performance and quality of the software for a specific
culture and to make the product look more natural for the
foreign target audience.
 Internationalization testing: Internationalization
testing is a type of software testing that ensures the
adaptability of software to different cultures and languages
around the world accordingly without any modifications in
source code.
Non-functional Testing Parameters

1. Security: This parameter is tested during Security testing.


This parameter defines how the system is secure against
sudden attacks from internal and external sources.
2. Reliability: This parameter is tested during Reliability
testing. This defines the extent to which the system
performs its intended functions without failure.
3. Survivability: This parameter is tested during Recovery
testing. This parameter checks that the software system is
able to recover itself in the case of failure and continuously
performs the specified function without any failure.
4. Availability: This is tested during Stability testing.
Availability here means the availability percentage of the
software system to the original service level agreement. It
means the degree to which the user can rely on the
software during its operation.
5. Efficiency: This parameter means the extent to which the
software system can handle the quantity and response
time.
6. Integrity: This parameter measures how high the source
code quality is when it is passed on to the QA.
7. Usability: This is tested in usability testing. This
parameter means how easily usable the system is from the
user’s perspective.
8. Flexibility: This parameter means how well the system
can respond to uncertainty in a way that allows it to
function normally.
9. Scalability: This parameter is tested during scalability
testing. This parameter measures the degree to which the
application can scale up or scale out its processing capacity
to meet an increase in demand.
10. Reusability: This means how many existing assets can
be reused in some form within the software product
development process or in another application.
11. Interoperability: This parameter is tested during the
Interoperability testing. This checks that the application
interfaces properly with its components or other application or
software.
12. Portability: This parameter checks the ease with which
the software can be moved from one environment to another.

You might also like