What is functional testing? is functional testing different from regression testing? I have heard the term functional testing in many different types, some use it for thorough testing part while others say functional testing is same as regression.

I have searched many sites but there is a lots of mismatch in these.

  • Check this out guru99.com. There is no mismatch. – Muhammad Ali Khamis Nov 25 '16 at 5:20
  • @MuhammadAliKhamis i am aware of these different websites, but as i had written in my question, different websites shows different opinions about this. that's why i am here. – Keshav Nov 25 '16 at 5:23

Functional & Regression Testing:

  • Functional Testing is carried out to verify whether implemented function or feature is working as specs or as expected?
  • Functional testing is having scope limited to targeted feature and functionality testing
  • Regression Testing is carried out when bug fixes happens, features has been added in old product and that product we are planning to deploy.
  • Regression testing result helps to ensure after bug fixes and addition of new features are working as expected + at the same time previously developed features are also working well
  • Scope of regression testing is very wide and huge. It includes end to end testing of the product
  • 1
    That's what i was looking for, thats alot man – Keshav Nov 25 '16 at 6:19

Depending on where you look, you'll get slightly different answers.

Functional Testing :

Testing the features and operational behavior of a product to ensure that the application is developed correspond to its specifications and requirements.

Testing that ignores the internal mechanism of a system or component and focuses solely on the outputs generated in response to selected inputs and execution conditions.
Functional tests check a particular feature for correctness by comparing the results for a given input against the specification. Functional tests don't concern themselves with intermediate results or side-effects, just the result (they don't care that after doing x, object y has state z). They are written to test part of the specification such as, "calling function Square(x) with the argument of 2 returns 4".

Regression Testing:

"A regression test re-runs previous tests against the changed software to ensure that the changes made in the current software do not affect the functionality of the existing software."

Regression is surely a check against the newly deployed code/or a release deployment happened where we just make sure it has no other impacts (ex: in terms of code, functionalities, output and the behavior of the application) and therefore we ensure that deployment has been smooth.

  • 1
    good one Bharat ! – NarendraC Nov 25 '16 at 9:19

Not the answer you're looking for? Browse other questions tagged or ask your own question.