DEV Community

Vignesh
Vignesh

Posted on

Functional Testing & Non Functional Testing

System setting is a level of testing done only by testers and it comes under black box testing. This testing is done at 2 different levels
*A. Functional testing
B. Non Functional testing. *

A. Functional testing is nothing but testing the functional values and is done by 3 major types
**1. Smoke testing

  1. Sanity testing
  2. Regression testing**

  3. Smoke testing is a build verification test and it tests the high priority test cases to ensure whether a basic field is working correctly.
    For example: If we are testing a sign-in page, with 2 columns username and password, in smoke testing we test whether we can enter the values into username section and password section. If that fails, then there will be no need to execute other test cases and this high priority fails.

  4. Sanity testing is done when the website or the product is enhanced. Sanity testing tests the enhanced part alone.
    For example: _In the sign-in page, if there is an enhancement of the sign-up button, sanity testing tests the sign-up button test cases alone. _

  5. Regression testing is also done when the website or product is enhanced but this tests the existing functionalities.
    For example: When the sign-up button is enhanced in the sign-in page, regression testing executes the high priority test cases of username and password, takes it into the regression suite and tests whether those work fine.
    Since we keep on testing old high priority test cases when enhancement is done, automation testing comes into place to avoid time waste and errors.

B. Non functional testing is done to test the non functional values like
**1. Performance testing

  1. Usability testing
  2. Compatibility testing
  3. Accessibility testing**

  4. Performance testing is done to check the load and stress of the product. A load is the maximum amount set and stress is testing beyond the maximum point. The end point is the software or product should be working fine.
    For example - _On a Great Indian festival at Amazon, lakhs of users visit and buy from the site. If the load is set at 2 lakh customers per second, it should work fine at this load and work beyond this load, that is for 2.2lakhs customers should also be handled by the website without getting crashed. _
    This testing is done by a performance engineer using the Jmeter tool.

  5. Usability testing is to make sure the GUI or Graphical User Interface works fine in the product. This testing makes sure the look and feel is satisfied and user friendly.
    For example - _The login button is usually set at the top right corner in many of the websites. Changing that will cause confusion and hindrance to the user. So this testing makes sure all these are rectified. _

  6. Compatibility testing is to make sure the product works across all platforms, no matter of devices or OS.
    For example - _The Amazon website should work fine on Windows laptops as well as Mac desktops. _

  7. Accessibility testing is testing based on a client's requirement that even differently disabled people should also use the product.

Top comments (0)