Comparing Functional Testing and Integration Testing: Key Differences