Why do we write integration tests?
Integration tests are written because they provide an extrememly comprehensive methodology for finding errors before deployment. They combine individual units of code to make sure they work when tested all together.
What problems do integration tests solve?
Integration testing can show us problems with the interfaces in program components before deployment.
What are the differences between top-down and bottom-down approaches?
In Bottoms up testing the smallest parts are tested first with more progressive combinations of parts added until all parts have been tested. In Top down, they begin with larger parts and go down from there to smaller units until the testing gets to the smallest.