Preparation Issues
The previous section, on making changes safely, all sounded too good to be true – and, of course, it is. There are many issues that might cause you to deviate from this plan or require a workaround. Some possible issues and suggestions for solving them follow – I encourage you to send me any that I've missed.
External Dependencies Required for Testing
This is probably the biggest issue you will face. Completely standalone systems are rare, and you are likely to have dependencies on external systems you do not control. These external systems might be anything from a simple database through to a payments system. If your system is tightly coupled, you may not even be able to start it without its external dependencies in place.
We're trying to create a test system that is as close to production as possible, so if we modify it to remove these dependencies, then the resultant test system is of limited use.
How can we solve this issue? Well, some suggestions are:
Connect to an External...