My question is in regards to a post deployment situation. We have plenty of unit tests and even integration tests where stubs and mocks are being used. I want to understand the habitation of code that is meant to only be run after code leaves lets say a development environment and is deployed with other system components. I guess we could really call this System Integration? For instance, take an example of a catalog API that provides a user a way to store a picture of the catalog item. The storing of the picture is actually done by a completely seperate API. For code, that performs testing like that would you store the test code with the original artifact (catalog API) or would you create a new test artifact to handle the System Integration aspects?