I am implementing a .NET application that uses Exchange Web Services (EWS) to process e-mails. That all works nice and dandy. But when it comes to acceptance and integration testing on different instances, this gets tricky because of the EWS dependency. I also use virtualization with Vagrant.
What is a good and robust way of resolving this dependency in a testing environment across many instances (for instance, to enable testing on feature branches)? Is it easy to have an Exchange server with EWS enabled on a virtual box? How about cloud integration where you would have an exchange instance with many test mail addresses (like on Azure)?