Now there are lots of approaches to unit testing Dynamics CRM plugins and some frameworks for creating Mocks.
Recently an XRM Test Framework has been made available.
But I like the simple approach(es) outlined in this blog. It doesn't use any tools because you write the code yourself which can be an advantage or a drawback. If you don't have time to evaluate a tool and think you can build unit tests quickly, then this is probably a good approach.
The first approach described in this blog may involve refactoring your code but it is the best approach if you want to run unit tests during an automated build process. It involves moving most of the code out of the Execute method of the Plug-in and putting it into a "logic" Class Library. So the unit tests simply call the Class library and you avoid having to go through the executing the plug-in. OK, it may not test that the attribute filter you included is working properly but at least it tests your code prior to deployment and so would catch any errors. These approaches, are not mutually exclusive, you would combine them to ensure the quality of the code.