Function tests are simple tests of individual functions. The goal of function testing is to test each function thoroughly and in isolation. It is very useful for assessing capability rather than reliability. Its weakness is that it misses interactions. Don’t confuse this term with functional testing, which is a broad term that encompasses black box testing:
* In function testing, we identify all of the individual features or functions, then test them one at a time.
* In functional testing, we treat the program, or any component of it, as a function (whose inner workings we may not be able to see) and test the functions by giving it inputs and comparing its outputs to expected results.