A sample text widget

Etiam pulvinar consectetur dolor sed malesuada. Ut convallis euismod dolor nec pretium. Nunc ut tristique massa.

Nam sodales mi vitae dolor ullamcorper et vulputate enim accumsan. Morbi orci magna, tincidunt vitae molestie nec, molestie at mi. Nulla nulla lorem, suscipit in posuere in, interdum non magna.

What is the difference between functional and non-functional testing?

Functional testing and non-functional testing are the two very important methodologies in the field of software testing.

About Functional Testing

– Functional testing is counted in the QA (quality assurance) practices while on the other hand the non–functional testing involves testing the non–functional requirements of the software system.
– The functional testing is a black box testing methodology whose test cases are based up on the specifications of the components of the software that are being tested.
– In functional testing, the input is fed to the functions and the output produced is examined to decide whether the function is working as expected or not.
– The functional testing rarely takes the internal structure of the program in to consideration unlike the white box testing.
– In other words, we can say that the functional testing gives a description of the purpose of the system under test.
– Functional testing exhibits a lot of difference even with the system testing since here the program is verified is verified by examining it against the specifications and the design documents.
– On the other hand in system testing, the program is validated by examining it against the system requirements or the user requirements.
There are 5 major steps that are to be followed in the functional testing:

  • Identify the functions that are to be performed by the software system.
  • Create the input data based up on the specifications of the particular function.
  • Determine the output based up on the same specifications.
  • Execute the test cases.
  • Compare the expected and the actual results.
  • – In functional testing, the functional specifications are provided by the client itself and the design specifications are obtained from the use cases that the design team provides.
    Following are covered by the functional testing:

  • Unit testing
  • Integration testing
  • System testing
  • Alpha testing
  • Beta testing
  • Black box testing
  • White box testing
  • User acceptance testing
  • Regression testing
  • Interface testing
  • – Functional testing tells how well the functions are being executed by the system including g the commands, searches, data manipulation, business processes, integrations, user screens and so on.

    About Non-Functional Testing

    – In the domain of non-functional testing, the names of various non–functional tests might be used interchangeably since there is an overlapping between the scopes of the various non–functional requirements.
    – For example, requirements such as scalability and reliability might be included in broader terms such as performance.
    Following testing are included in the non-functional testing:

  • Baseline testing
  • Compliance testing
  • Endurance testing
  • Localization testing
  • Internationalization testing
  • Recovery testing
  • Security testing
  • Stress testing
  • Volume testing
  • Compatibility testing
  • Documentation testing
  • Load testing
  • Performance testing
  • Resilience testing
  • Scalability testing
  • Usability testing
  • Inter-operability testing
  • Endurance testing
  • Ergonomics testing
  • Maintainability testing
  • Recover-ability testing
  • Configuration testing
  • – In the non functional testing, the testing scenarios and the requirements are specified by the client.
    – The non-functional testing seeks to check the readiness of the SUT as per the various factors that the functional testing does not cover.
    – To put it simply, we can say that the with the non-functional testing we can measure and compare the actual and the expected results obtained after testing the non-functional attributes of the system under test.
    – So we can say that with the non-functional testing, we can judge the behavior of the system apart from just testing its purpose.
    – One thing that should be noted is that even though the functionality of the system are important, it is the non – functional attributes that affect the trust of the user on the software.
    – Therefore, non – functional testing is as important as its functional counterpart.

    Leave a Reply

    You can use these HTML tags

    <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>