Alright....so this is driving me nuts as I'm trying to encourage the team to write more tests yet here I am unable to determine whether the following example is considered an integration or a functional test case.
Consider the following:
We have a simple web application which routes/exposes a number of JSON feeds. Each user request requires that our application query an external service via HTTP (on the backend) before performing some data transformations and then returning a serialized JSON response.
Using a 3rd party library, we're able to record every unique HTTP interaction which occurs on the backend and write it to the filesystem. These recordings are then "played back" allowing our query results to be treated as deterministic.
My test case contains a single assertion. It's a just a string which contains the expected JSON response. After we initialize our application we capture the router's response and compare it against the string.
1) Is this a functional test or an integration test?
2) If functional, then what exactly is the difference between "Big Bang Integration Testing and Functional Testing"?