Functional testing and non Functional Testing
Functional testing and non Functional Testing
Functional Testing
● Unit Testing: Focuses on individual units of code (functions, classes, modules).
○ Example: In a shopping cart application, a unit test would verify that adding an item
to the cart correctly updates the quantity and total price.
● Integration Testing: Ensures different software components work together seamlessly.
○ Example: In a web application, integration testing would confirm that the shopping
cart data is passed accurately from the front-end form to the back-end database.
● System Testing: Tests the entire system as a whole, simulating real-world use cases.
○ Example: In the shopping cart application, system testing would involve placing an
order, going through checkout, and verifying successful payment processing and
order confirmation.
● Acceptance Testing: Performed by users or stakeholders to ensure the system meets
their requirements.
○ Example: Users would test the shopping cart application for ease of adding items,
modifying quantities, and completing the checkout process.
Non-Functional Testing
● Performance Testing: Measures system responsiveness, stability, and scalability under
load.
○ Example: Performance testing the shopping cart application would involve
simulating multiple users concurrently adding items and checking out to assess its
ability to handle peak traffic.
● Usability Testing: Evaluates how intuitive and user-friendly the system is.
○ Example: Usability testing of the shopping cart application would involve observing
users navigating the interface, adding items, and completing a purchase. Testers
would identify any confusing elements or navigation issues.
● Security Testing: Identifies vulnerabilities that could be exploited by attackers.
○ Example: Security testing of the shopping cart application would involve
penetration testing to try to gain unauthorized access to sensitive user data, such
as credit card information.
● Compatibility Testing: Verifies the system functions correctly across different browsers,
operating systems, devices, and screen resolutions.
○ Example: Compatibility testing of the shopping cart application would involve
testing it on different browsers (Chrome, Firefox, Edge) and mobile devices (iOS,
Android) to ensure consistent functionality.
Remember, the specific tests you conduct will depend on the nature and complexity of your
application.