For a short summary:
- Unit tests are the smaller ones that expects something to do it right in dev's view.
- Functional tests are those that expects things are right in user's view
If Functional Tests are already satisfied, do we still need to do Unit Tests?
Most likely (let's use web development as context), this is common by using the browser to see if things are right by letting other users/people try the system/application.
Let us put out other tests like for edge cases.
Are there any metrics that you're using to determined if a functional test is "satisfied"?
I feel like it helps to have an objective measurement to create a baseline to compare types of tests, a common one is code coverage.
By identifying code coverage it's easy to compare functional tests, and unit tests, does the functional test cover the same lines of code as the unit test? If so than it is redundant.
The problem is this ignores a ton of other issues: