In this series of posts, I showed you a good way to test Umbraco controllers. The key lies in having those dependencies injected in the constructor and never accessed in the form of a non-settable static property (e.g. UmbracoContext.Current) allowing us to stub the Umbraco dependencies for our unit tests and move on with our lives.
Feel free to download the attachment which is an Umbraco application sample that contains the samples displayed in this post series. Use it if somehow you're having difficulties writing the code yourself, get some inspiration from it and/or provide feedback.