<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>mockingbird Wiki &amp; Documentation Rss Feed</title><link>http://www.codeplex.com/mockingbird/Wiki/View.aspx?title=Home</link><description>mockingbird Wiki Rss Description</description><item><title>New Comment on "Documentation"</title><link>http://mockingbird.codeplex.com/documentation?&amp;ANCHOR#C24044</link><description>Hi, I seem to be missing the app.config files on the Mockingbird ServiceStudio. Can anyone point to it&amp;#63; Thanks</description><author>omkarb</author><pubDate>Tue, 12 Jun 2012 19:54:57 GMT</pubDate><guid isPermaLink="false">New Comment on "Documentation" 20120612075457P</guid></item><item><title>New Comment on "Documentation"</title><link>http://mockingbird.codeplex.com/documentation?&amp;ANCHOR#C24043</link><description>Hi Santosh, I want to use Mockingbird for one of my projects. I tried installing it but I seem to be missing the app.config file. Can you point me towards it&amp;#63; Thanks</description><author>omkarb</author><pubDate>Tue, 12 Jun 2012 19:28:37 GMT</pubDate><guid isPermaLink="false">New Comment on "Documentation" 20120612072837P</guid></item><item><title>Updated Wiki: Home</title><link>http://mockingbird.codeplex.com/wikipage?version=72</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;What is MockingBird?&lt;/h2&gt;&lt;b&gt;MockingBird Service Simulator&lt;/b&gt; is a configurable message interceptor backed by a generic simulation engine that can act as a stand in for any web service. It also includes a set of tools to help build and test mock services. &lt;br /&gt;
&lt;h2&gt;Current Release - V2 RTM&lt;/h2&gt;&lt;b&gt;V2.0 RTM&lt;/b&gt; is now available. The new features of this release are the addition of a Service Configurator module which allows you to pick a WSDL (on file or from a running service) and automatically generate a default mock service.  Check out the &lt;a href="http://santoshbenjamin.wordpress.com/2010/08/12/mockingbird-v2-rtm/" class="externalLink"&gt;blog post&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; for more details on the new features.&lt;br /&gt;&lt;br /&gt;Please refer to the Documentation tab of the workspace for notes on pre-requisites, deployment and other documentation. &lt;br /&gt;&lt;b&gt;Note: Platform Consideration: &lt;/b&gt; If you are using this on Win7 or Win2008/R2 (Basically IIS7.x) then the app pool should be running in Classic Mode. &lt;br /&gt;
&lt;h2&gt;NEW - MockingBird Videos&lt;/h2&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/08/15/mockingbird-videos/" class="externalLink"&gt;MockingBird V2 Videos&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; are now available. Let us know if you find them helpful and what other video content on MB would be useful &lt;br /&gt;
&lt;h2&gt;Usage Scenarios&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Contract First Development:&lt;/b&gt; In many development/integration scenarios it is common to define a WSDL first for all your web services and then proceed with developing the services that implement it. In such scenarios MockingBird helps you by generating a complete mock service that you can test against while development is proceeding.  Additionally some products do not lend themselves to easy &amp;#39;mocking&amp;#39; (examples: BizTalk, Sharepoint) . Also when dealing with &lt;b&gt;commercial&lt;/b&gt; web services, it is common to be provided a WSDL first and thats all you have till licenses are acquired and the service is installed. Again, by mocking these services up, your dev effort can get off the ground quicker.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Environment Isolation:&lt;/b&gt; For your build and automated test / CI process and other &amp;#39;dev&amp;#39; environments , it can be invaluable to be completely independent of any external service. This is where MockingBird comes in. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Integration Test Facilitation:&lt;/b&gt; With some commercial web services you are restricted to only a few environments to install and even then, setting up test data and reconfiguring the installation for functional testing can be laborious. Most non trivial web services also have databases and other configuration stores which are not easy to setup and tear down during testing. Enter MockingBird. &lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Setting up stub services can be very laborious and MockingBird aims to make this much simpler.  It is important to understand that MockingBird does NOT replace &lt;b&gt;unit testing&lt;/b&gt; where you may employ traditional mock or stub objects, rather it is a &lt;b&gt;functional/integration test facilitator&lt;/b&gt;.   &lt;br /&gt;&lt;br /&gt;Of course you do eventually need to perform functional and integration tests against the actual external system because it is not possible to simulate all the exceptions and data conditions of a line-of-business application in a mock service. Mockingbird just helps you get a working interface with a comprehensive base of response messages that will help in getting development off the ground.&lt;br /&gt;&lt;br /&gt;The documentation provides more details on these usage scenarios. Please read through the documentation to understand how the MockingBird toolset works in greater detail.&lt;br /&gt;
&lt;h3&gt;What does it look like and what&amp;#39;s inside the box ?&lt;/h3&gt;At a very high level the system looks like the illustration below&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=mockingbird&amp;DownloadId=111482" alt="v2_Arch_And_Design_Small.png" title="v2_Arch_And_Design_Small.png" /&gt;&lt;br /&gt;&lt;br /&gt;The only requirement for the system to work right &lt;b&gt;out of the box&lt;/b&gt; is a “model” XML file representing the endpoint (and the Configurator module can generate this automatically from a given WSDL) &lt;br /&gt;&lt;br /&gt;There are 3 main components of MockingBird at this time (and many more to come)
&lt;ul&gt;&lt;li&gt;A &lt;b&gt;Service Simulator&lt;/b&gt; app which is comprised of - An ASP.NET HttpHandler, A WCF message Interceptor, A WCF SimulatorHost console (for non Http protocol support) and all these are backed up by a generic &lt;b&gt;Simulation Framework&lt;/b&gt; which is configured to return pre-defined responses using a &lt;b&gt;model&lt;/b&gt; file for each endpoint that is being simulated.&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;Service Studio&lt;/b&gt; application that has 3 main modules 
&lt;ul&gt;&lt;li&gt;A module to pick a WSDL and automatically generate a complete default mock service.&lt;/li&gt;
&lt;li&gt;A module to parse a given WSDL and generate sample requests and responses and help in setting up a mock service quickly. &lt;/li&gt;
&lt;li&gt;A module to invoke the test services or remote services and check the responses.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;XML Instance Generation&lt;/b&gt; library that is used in the &lt;b&gt;Service Studio&lt;/b&gt; but can also be used independently.&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Please refer to the comprehensive documentation (included with the download package) to understand how to install it, how it works and how to extend it.&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;The primary areas that we are targeting for the future are&lt;br /&gt;(1) Structural changes to enable extensibility and customization&lt;br /&gt;(2) Upgrade of platform to .NET 4 and Windows Server AppFabric&lt;br /&gt;(3) Extending this to provide mock BizTalk adapters via the WCF LOB Adapter SDK&lt;br /&gt;(4) A better UI (preferably WPF) to help setup, configure and manage the mock services.&lt;br /&gt;(5) REST services, oDATA support&lt;br /&gt;(6) Azure &lt;br /&gt;&lt;br /&gt;Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Thu, 04 Nov 2010 17:28:27 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20101104052827P</guid></item><item><title>Updated Wiki: Alternative approaches</title><link>http://mockingbird.codeplex.com/wikipage?title=Alternative approaches&amp;version=3</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;Alternative Approaches&lt;/h2&gt;
Mocking Services and their endpoints is a useful part of testing and in many ways can improve the reliability of your code as you can control and force various data conditions and exception conditions.  The approach that MockingBird takes (using HttpHandlers &amp;amp; Interceptors ) is not the only way to do this. I&amp;#39;ll briefly describe two other approaches that you could take and also look at how MockingBird could help with those in future.&lt;br /&gt;
&lt;h3&gt;WSCF - Web Services Contract First&lt;/h3&gt;
A tool that I really like and have used extensively (and am now part of the dev team too) is &lt;a href="http://wscfblue.codeplex.com" class="externalLink"&gt;WSCF&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. The data contracts that it generates are much cleaner than XSD.exe and XSDObjectGen. Both &amp;quot;Classic&amp;quot; WSCF (ASMX) and &amp;quot;Blue&amp;quot; (WCF)  create well defined interfaces and the corresponding SVC and ASMX files. &lt;br /&gt;With either of these you can always fill out the code behind the methods and &amp;#39;new&amp;#39; up the responses. &lt;br /&gt;&lt;br /&gt;You can hardcode these reponses or use some other technique. In the days before MockingBird (and its predecessor) I linked up WSCF Classic with some utilty classes we wrote for serialization/deserialization etc so we put in a couple of lines of code in the ASMX stub to deserialze the response file into the class and return it. I have recently come across &lt;a href="http://www.nbuilder.org/" class="externalLink"&gt;NBuilder&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and i think that this could also be used to create more &amp;#39;intelligent&amp;#39; responses although I havent actually tried this out.&lt;br /&gt;&lt;br /&gt;You can, of course, take this sort of approach to creating your stubs. However, there is a lot of maintenance involved especially when your contracts change (which they invariably do!) . Another downside is that now you need an actual physical endpoint for each endpoint you want to mock. Writing a generic endpoint would defeat a key part of WSCF, which is to encourage a strong typed approach to web services.  MockingBird offers a lightweight alternative to this. &lt;br /&gt;
&lt;h3&gt;Using &amp;quot;Traditional&amp;quot; Mock Object Frameworks&lt;/h3&gt;If you have full control over the consumer (especially if you are writing it from scratch), then one good way to test is to use mock objects like MoQ or RhinoMocks or TypeMock. &lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Proxy generation tools (including WSCF) will usually generate an interface that the proxy code uses. &lt;/li&gt;
&lt;li&gt;In the code that calls the proxy, instead of dealing with the concrete proxy class, you declare a member property of the proxy interface type (for example : &lt;b&gt;ICustomerService&lt;/b&gt; instead of the concrete &lt;b&gt;CustomerServiceProxy&lt;/b&gt;). &lt;/li&gt;
&lt;li&gt;In the test, prior to calling the method of the class you are testing (which may be the service agent or the business logic - whichever depends on the proxy), you inject a mock interface  (ie: a mock ICustomerService) and set expectations (for instance, you can set an expectation that the GetCustomerData method will be called and if it does, then you specify what data is to be returned). &lt;/li&gt;
&lt;li&gt;Now when you call the method of your class under test, it will invoke the mock service and will get back the required data from the mock service. &lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;There is no need to set up an instance of the service, update your config files, run into issues with ASP.NET permissions (happens all the time , doesnt it !!) etc.  Now your tests of the main class are really unit tests and not dependent on environment conditions. &lt;br /&gt;&lt;br /&gt;This is quite a popular approach to unit testing. It cannot substitute for integration testing, but it allows you to test with a variety of data and exception conditions and improves code quality. MockingBird is a different paradigm to mock objects since it is a actual endpoint and so is more like a &amp;#39;functional test&amp;#39; &lt;br /&gt;
&lt;h3&gt;So, what about BizTalk?&lt;/h3&gt;
With Biztalk you can mock dependencies when testing pipeline components but you cannot do that for orchestrations. So mock objects are of no use there. However, WSCF stubs or MockingBird are an excellent way to provide Biztalk with endpoints to call. All you need to do is set the URI of the mockend point in the binding file.  &lt;br /&gt;&lt;br /&gt;I do hope to be able to develop some Biztalk mock adapters as well which will allow you to use the &amp;#39;real&amp;#39; transport channels but direct the calls to mock endpoints and also looking into the possibility of generating BizUnit tests steps for a given WSDL.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Mon, 23 Aug 2010 09:18:32 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Alternative approaches 20100823091832A</guid></item><item><title>Updated Wiki: Documentation</title><link>http://mockingbird.codeplex.com/documentation?version=4</link><description>&lt;div class="wikidoc"&gt;&lt;h3&gt;Platform Considerations*&lt;/h3&gt;If you are using this on Win7 or Win2008/R2 (Basically IIS7.x) then the app pool should be running in &lt;b&gt;Classic&lt;/b&gt; Mode. Also take a look at the Troubleshooting section of the Installation Guide for changes needed to the web.config as the way HttpHandlers are loaded has changed from previous versions of IIS. If it still doesnt work, please let me know and I will look into the issues.&lt;br /&gt;
&lt;h3&gt;Implementation Platform and Pre-requisites&lt;/h3&gt;This is written against .NET 3.5 and uses some C# 3.0 features as well as the &lt;a href="http://code.google.com/p/moq/" class="externalLink"&gt;MoQ&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; mock-object framework. The IoC mechanism is &lt;a href="http://www.codeplex.com/unity" class="externalLink"&gt;Unity&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; .  The test framework is &lt;a href="http://www.mbunit.com/" class="externalLink"&gt;MbUnit3.5&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. MbUnit 3.5 uses the &lt;a href="http://www.gallio.org/" class="externalLink"&gt;Gallio Test Automation Platform&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and these binaries are only required if you run the unit and functional tests (and the packages include the binaries used for development).  Note that for developing/debugging the unit tests, Gallio should be installed. It is not enough to merely reference the DLLs. You can use any of the unit test runners (Gallio Icarus, TestDriven, R# or CodeRush TestRunner). &lt;br /&gt;
&lt;h3&gt;Documentation&lt;/h3&gt;&lt;h4&gt;This Workspace&lt;/h4&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Quick%20Setup%20Guide&amp;referringTitle=Documentation"&gt;Quick Setup Guide&lt;/a&gt; - the 10 min overview to setting it up&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Detailed%20Scenarios&amp;referringTitle=Documentation"&gt;Detailed Scenarios&lt;/a&gt; - description of the Contract First approaches and the Environment Isolation&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Alternative%20approaches&amp;referringTitle=Documentation"&gt;Alternative approaches&lt;/a&gt; - what other approaches can be used for mocking services?&lt;/li&gt;&lt;/ol&gt;
&lt;h4&gt;Blog Articles&lt;/h4&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/14/introducing-mockingbird/" class="externalLink"&gt;Introducing MockingBird (announcing this tool)&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/22/waltzing-with-wsdl/" class="externalLink"&gt;Waltzing with WSDL (progress on the Studio GUI&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/07/mockingbird-beta/" class="externalLink"&gt;MockingBird Beta&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/22/mockingbird-beta-2/" class="externalLink"&gt;MockingBird Beta-2&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/11/21/mockingbird-v1-rtm/" class="externalLink"&gt;MockingBird v1 RTM&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/01/18/mockingbird-the-roadmap/" class="externalLink"&gt;MockingBird - The Roadmap&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/03/17/mockingbird-meets-wcf-in-v2-0-rc/" class="externalLink"&gt;MockingBird - v2.0 RC&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/08/12/mockingbird-v2-rtm/" class="externalLink"&gt;MockingBird - v2.0 RTM&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;

&lt;h3&gt;Acknowledgements, the team and the roadmap&lt;/h3&gt;&lt;h4&gt;The Original Idea&lt;/h4&gt;MockingBird started life as &lt;b&gt;MockWeb&lt;/b&gt; an internal HTTP based tool  that my former colleagues &lt;b&gt;Senthil Sai&lt;/b&gt; , &lt;b&gt;Will Struthers&lt;/b&gt; and I developed over 3 years ago. Credit must go to them the inspiration behind this tool. MockingBird now has a growing core team (Bram Veldhoen, Cormac O Brien, Shen Chauhan) and a number of &amp;#39;advisors.&lt;br /&gt;
&lt;h4&gt;Contributors &amp;amp; Supporters&lt;/h4&gt;I would also like to thank Nick Heppleston for his early adoption and feedback which helped build more quality into the tool. I would also like to thank Yossi Dahan and Michael Stephenson for their support.  A big thanks to the community for adopting MockingBird. Its an awesome experience to keep bumping into folks at user groups who are regular users of MockingBird and hear of their scenarios!!&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;As indicated on the home page , We are constantly looking for ways to extend the reach and utility of this tool. Of course, it all depends on time available outside regular work for all the current team.  If you would like to join and /or contribute code to extend MockingBird (especially in the primary areas i&amp;#39;ve listed) please do let me know.  Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Mon, 23 Aug 2010 09:01:01 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Documentation 20100823090101A</guid></item><item><title>Updated Wiki: Home</title><link>http://mockingbird.codeplex.com/wikipage?version=71</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;What is MockingBird?&lt;/h2&gt;&lt;b&gt;MockingBird Service Simulator&lt;/b&gt; is a configurable message interceptor backed by a generic simulation engine that can act as a stand in for any web service. It also includes a set of tools to help build and test mock services. &lt;br /&gt;
&lt;h2&gt;Current Release - V2 RTM&lt;/h2&gt;&lt;b&gt;V2.0 RTM&lt;/b&gt; is now available. The new features of this release are the addition of a Service Configurator module which allows you to pick a WSDL (on file or from a running service) and automatically generate a default mock service.  Check out the &lt;a href="http://santoshbenjamin.wordpress.com/2010/08/12/mockingbird-v2-rtm/" class="externalLink"&gt;blog post&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; for more details on the new features.&lt;br /&gt;&lt;br /&gt;Please refer to the Documentation tab of the workspace for notes on pre-requisites, deployment and other documentation.&lt;br /&gt;
&lt;h2&gt;NEW - MockingBird Videos&lt;/h2&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/08/15/mockingbird-videos/" class="externalLink"&gt;MockingBird V2 Videos&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; are now available. Let us know if you find them helpful and what other video content on MB would be useful &lt;br /&gt;
&lt;h2&gt;Usage Scenarios&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Contract First Development:&lt;/b&gt; In many development/integration scenarios it is common to define a WSDL first for all your web services and then proceed with developing the services that implement it. In such scenarios MockingBird helps you by generating a complete mock service that you can test against while development is proceeding.  Additionally some products do not lend themselves to easy &amp;#39;mocking&amp;#39; (examples: BizTalk, Sharepoint) . Also when dealing with &lt;b&gt;commercial&lt;/b&gt; web services, it is common to be provided a WSDL first and thats all you have till licenses are acquired and the service is installed. Again, by mocking these services up, your dev effort can get off the ground quicker.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Environment Isolation:&lt;/b&gt; For your build and automated test / CI process and other &amp;#39;dev&amp;#39; environments , it can be invaluable to be completely independent of any external service. This is where MockingBird comes in. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Integration Test Facilitation:&lt;/b&gt; With some commercial web services you are restricted to only a few environments to install and even then, setting up test data and reconfiguring the installation for functional testing can be laborious. Most non trivial web services also have databases and other configuration stores which are not easy to setup and tear down during testing. Enter MockingBird. &lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Setting up stub services can be very laborious and MockingBird aims to make this much simpler.  It is important to understand that MockingBird does NOT replace &lt;b&gt;unit testing&lt;/b&gt; where you may employ traditional mock or stub objects, rather it is a &lt;b&gt;functional/integration test facilitator&lt;/b&gt;.   &lt;br /&gt;&lt;br /&gt;Of course you do eventually need to perform functional and integration tests against the actual external system because it is not possible to simulate all the exceptions and data conditions of a line-of-business application in a mock service. Mockingbird just helps you get a working interface with a comprehensive base of response messages that will help in getting development off the ground.&lt;br /&gt;&lt;br /&gt;The documentation provides more details on these usage scenarios. Please read through the documentation to understand how the MockingBird toolset works in greater detail.&lt;br /&gt;
&lt;h3&gt;What does it look like and what&amp;#39;s inside the box ?&lt;/h3&gt;At a very high level the system looks like the illustration below&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=mockingbird&amp;DownloadId=111482" alt="v2_Arch_And_Design_Small.png" title="v2_Arch_And_Design_Small.png" /&gt;&lt;br /&gt;&lt;br /&gt;The only requirement for the system to work right &lt;b&gt;out of the box&lt;/b&gt; is a “model” XML file representing the endpoint (and the Configurator module can generate this automatically from a given WSDL) &lt;br /&gt;&lt;br /&gt;There are 3 main components of MockingBird at this time (and many more to come)
&lt;ul&gt;&lt;li&gt;A &lt;b&gt;Service Simulator&lt;/b&gt; app which is comprised of - An ASP.NET HttpHandler, A WCF message Interceptor, A WCF SimulatorHost console (for non Http protocol support) and all these are backed up by a generic &lt;b&gt;Simulation Framework&lt;/b&gt; which is configured to return pre-defined responses using a &lt;b&gt;model&lt;/b&gt; file for each endpoint that is being simulated.&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;Service Studio&lt;/b&gt; application that has 3 main modules 
&lt;ul&gt;&lt;li&gt;A module to pick a WSDL and automatically generate a complete default mock service.&lt;/li&gt;
&lt;li&gt;A module to parse a given WSDL and generate sample requests and responses and help in setting up a mock service quickly. &lt;/li&gt;
&lt;li&gt;A module to invoke the test services or remote services and check the responses.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;XML Instance Generation&lt;/b&gt; library that is used in the &lt;b&gt;Service Studio&lt;/b&gt; but can also be used independently.&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Please refer to the comprehensive documentation (included with the download package) to understand how to install it, how it works and how to extend it.&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;The primary areas that we are targeting for the future are&lt;br /&gt;(1) Structural changes to enable extensibility and customization&lt;br /&gt;(2) Upgrade of platform to .NET 4 and Windows Server AppFabric&lt;br /&gt;(3) Extending this to provide mock BizTalk adapters via the WCF LOB Adapter SDK&lt;br /&gt;(4) A better UI (preferably WPF) to help setup, configure and manage the mock services.&lt;br /&gt;(5) REST services, oDATA support&lt;br /&gt;(6) Azure &lt;br /&gt;&lt;br /&gt;Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Tue, 17 Aug 2010 17:36:38 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20100817053638P</guid></item><item><title>Updated Wiki: Home</title><link>http://mockingbird.codeplex.com/wikipage?version=70</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;What is MockingBird?&lt;/h2&gt;&lt;b&gt;MockingBird Service Simulator&lt;/b&gt; is a configurable message interceptor backed by a generic simulation engine that can act as a stand in for any web service. It also includes a set of tools to help build and test mock services. &lt;br /&gt;
&lt;h2&gt;Current Release - V2 RTM&lt;/h2&gt;&lt;b&gt;V2.0 RTM&lt;/b&gt; is now available. The new features of this release are the addition of a Service Configurator module which allows you to pick a WSDL (on file or from a running service) and automatically generate a default mock service.  Check out the &lt;a href="http://santoshbenjamin.wordpress.com/2010/08/12/mockingbird-v2-rtm/" class="externalLink"&gt;blog post&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; for more details on the new features.&lt;br /&gt;&lt;br /&gt;Please refer to the Documentation tab of the workspace for notes on pre-requisites, deployment and other documentation.&lt;br /&gt;
&lt;h2&gt;Usage Scenarios&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Contract First Development:&lt;/b&gt; In many development/integration scenarios it is common to define a WSDL first for all your web services and then proceed with developing the services that implement it. In such scenarios MockingBird helps you by generating a complete mock service that you can test against while development is proceeding.  Additionally some products do not lend themselves to easy &amp;#39;mocking&amp;#39; (examples: BizTalk, Sharepoint) . Also when dealing with &lt;b&gt;commercial&lt;/b&gt; web services, it is common to be provided a WSDL first and thats all you have till licenses are acquired and the service is installed. Again, by mocking these services up, your dev effort can get off the ground quicker.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Environment Isolation:&lt;/b&gt; For your build and automated test / CI process and other &amp;#39;dev&amp;#39; environments , it can be invaluable to be completely independent of any external service. This is where MockingBird comes in. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Integration Test Facilitation:&lt;/b&gt; With some commercial web services you are restricted to only a few environments to install and even then, setting up test data and reconfiguring the installation for functional testing can be laborious. Most non trivial web services also have databases and other configuration stores which are not easy to setup and tear down during testing. Enter MockingBird. &lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Setting up stub services can be very laborious and MockingBird aims to make this much simpler.  It is important to understand that MockingBird does NOT replace &lt;b&gt;unit testing&lt;/b&gt; where you may employ traditional mock or stub objects, rather it is a &lt;b&gt;functional/integration test facilitator&lt;/b&gt;.   &lt;br /&gt;&lt;br /&gt;Of course you do eventually need to perform functional and integration tests against the actual external system because it is not possible to simulate all the exceptions and data conditions of a line-of-business application in a mock service. Mockingbird just helps you get a working interface with a comprehensive base of response messages that will help in getting development off the ground.&lt;br /&gt;&lt;br /&gt;The documentation provides more details on these usage scenarios. Please read through the documentation to understand how the MockingBird toolset works in greater detail.&lt;br /&gt;
&lt;h3&gt;What does it look like and what&amp;#39;s inside the box ?&lt;/h3&gt;At a very high level the system looks like the illustration below&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=mockingbird&amp;DownloadId=111482" alt="v2_Arch_And_Design_Small.png" title="v2_Arch_And_Design_Small.png" /&gt;&lt;br /&gt;&lt;br /&gt;The only requirement for the system to work right &lt;b&gt;out of the box&lt;/b&gt; is a “model” XML file representing the endpoint (and the Configurator module can generate this automatically from a given WSDL) &lt;br /&gt;&lt;br /&gt;There are 3 main components of MockingBird at this time (and many more to come)
&lt;ul&gt;&lt;li&gt;A &lt;b&gt;Service Simulator&lt;/b&gt; app which is comprised of - An ASP.NET HttpHandler, A WCF message Interceptor, A WCF SimulatorHost console (for non Http protocol support) and all these are backed up by a generic &lt;b&gt;Simulation Framework&lt;/b&gt; which is configured to return pre-defined responses using a &lt;b&gt;model&lt;/b&gt; file for each endpoint that is being simulated.&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;Service Studio&lt;/b&gt; application that has 3 main modules 
&lt;ul&gt;&lt;li&gt;A module to pick a WSDL and automatically generate a complete default mock service.&lt;/li&gt;
&lt;li&gt;A module to parse a given WSDL and generate sample requests and responses and help in setting up a mock service quickly. &lt;/li&gt;
&lt;li&gt;A module to invoke the test services or remote services and check the responses.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;XML Instance Generation&lt;/b&gt; library that is used in the &lt;b&gt;Service Studio&lt;/b&gt; but can also be used independently.&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Please refer to the comprehensive documentation (included with the download package) to understand how to install it, how it works and how to extend it.&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;The primary areas that we are targeting for the future are&lt;br /&gt;(1) Structural changes to enable extensibility and customization&lt;br /&gt;(2) Upgrade of platform to .NET 4 and Windows Server AppFabric&lt;br /&gt;(3) Extending this to provide mock BizTalk adapters via the WCF LOB Adapter SDK&lt;br /&gt;(4) A better UI (preferably WPF) to help setup, configure and manage the mock services.&lt;br /&gt;(5) REST services, oDATA support&lt;br /&gt;(6) Azure &lt;br /&gt;&lt;br /&gt;Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Tue, 17 Aug 2010 11:20:50 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20100817112050A</guid></item><item><title>Updated Wiki: Documentation</title><link>http://mockingbird.codeplex.com/documentation?version=3</link><description>&lt;div class="wikidoc"&gt;&lt;h3&gt;Platform Considerations*&lt;/h3&gt;If you are using this on Win7 or Win2008/R2 (Basically IIS7.x) then the app pool should be running in &lt;b&gt;Classic&lt;/b&gt; Mode. Also take a look at the Troubleshooting section of the Installation Guide for changes needed to the web.config as the way HttpHandlers are loaded has changed from previous versions of IIS. If it still doesnt work, please let me know and I will look into the issues.&lt;br /&gt;
&lt;h3&gt;Implementation Platform and Pre-requisites&lt;/h3&gt;This is written against .NET 3.5 and uses some C# 3.0 features as well as the &lt;a href="http://code.google.com/p/moq/" class="externalLink"&gt;MoQ&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; mock-object framework. The IoC mechanism is &lt;a href="http://www.codeplex.com/unity" class="externalLink"&gt;Unity&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; .  The test framework is &lt;a href="http://www.mbunit.com/" class="externalLink"&gt;MbUnit3.5&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. MbUnit 3.5 uses the &lt;a href="http://www.gallio.org/" class="externalLink"&gt;Gallio Test Automation Platform&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and these binaries are only required if you run the unit and functional tests (and the packages include the binaries used for development).  &lt;br /&gt;
&lt;h3&gt;Documentation&lt;/h3&gt;&lt;h4&gt;This Workspace&lt;/h4&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Quick%20Setup%20Guide&amp;referringTitle=Documentation"&gt;Quick Setup Guide&lt;/a&gt; - the 10 min overview to setting it up&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Detailed%20Scenarios&amp;referringTitle=Documentation"&gt;Detailed Scenarios&lt;/a&gt; - description of the Contract First approaches and the Environment Isolation&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Alternative%20approaches&amp;referringTitle=Documentation"&gt;Alternative approaches&lt;/a&gt; - what other approaches can be used for mocking services?&lt;/li&gt;&lt;/ol&gt;
&lt;h4&gt;Blog Articles&lt;/h4&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/14/introducing-mockingbird/" class="externalLink"&gt;Introducing MockingBird (announcing this tool)&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/22/waltzing-with-wsdl/" class="externalLink"&gt;Waltzing with WSDL (progress on the Studio GUI&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/07/mockingbird-beta/" class="externalLink"&gt;MockingBird Beta&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/22/mockingbird-beta-2/" class="externalLink"&gt;MockingBird Beta-2&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/11/21/mockingbird-v1-rtm/" class="externalLink"&gt;MockingBird v1 RTM&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/01/18/mockingbird-the-roadmap/" class="externalLink"&gt;MockingBird - The Roadmap&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/03/17/mockingbird-meets-wcf-in-v2-0-rc/" class="externalLink"&gt;MockingBird - v2.0 RC&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/08/12/mockingbird-v2-rtm/" class="externalLink"&gt;MockingBird - v2.0 RTM&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;

&lt;h3&gt;Acknowledgements, the team and the roadmap&lt;/h3&gt;&lt;h4&gt;The Original Idea&lt;/h4&gt;MockingBird started life as &lt;b&gt;MockWeb&lt;/b&gt; an internal HTTP based tool  that my former colleagues &lt;b&gt;Senthil Sai&lt;/b&gt; , &lt;b&gt;Will Struthers&lt;/b&gt; and I developed over 3 years ago. Credit must go to them the inspiration behind this tool. MockingBird now has a growing core team (Bram Veldhoen, Cormac O Brien, Shen Chauhan) and a number of &amp;#39;advisors.&lt;br /&gt;
&lt;h4&gt;Contributors &amp;amp; Supporters&lt;/h4&gt;I would also like to thank Nick Heppleston for his early adoption and feedback which helped build more quality into the tool. I would also like to thank Yossi Dahan and Michael Stephenson for their support.  A big thanks to the community for adopting MockingBird. Its an awesome experience to keep bumping into folks at user groups who are regular users of MockingBird and hear of their scenarios!!&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;As indicated on the home page , We are constantly looking for ways to extend the reach and utility of this tool. Of course, it all depends on time available outside regular work for all the current team.  If you would like to join and /or contribute code to extend MockingBird (especially in the primary areas i&amp;#39;ve listed) please do let me know.  Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Tue, 17 Aug 2010 11:20:02 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Documentation 20100817112002A</guid></item><item><title>Updated Wiki: Home</title><link>http://mockingbird.codeplex.com/wikipage?version=69</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;What is MockingBird?&lt;/h2&gt;&lt;b&gt;MockingBird Service Simulator&lt;/b&gt; is a configurable message interceptor backed by a generic simulation engine that can act as a stand in for any web service. It also includes a set of tools to help build and test mock services. &lt;br /&gt;
&lt;h2&gt;Current Release - V2 RTM&lt;/h2&gt;&lt;b&gt;V2.0 RTM&lt;/b&gt; is now available. The new features of this release are the addition of a Service Configurator module which allows you to pick a WSDL (on file or from a running service) and automatically generate a default mock service.  &lt;br /&gt;&lt;br /&gt;Please refer to the Documentation tab of the workspace for notes on pre-requisites, deployment and other documentation.&lt;br /&gt;
&lt;h2&gt;Usage Scenarios&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Contract First Development:&lt;/b&gt; In many development/integration scenarios it is common to define a WSDL first for all your web services and then proceed with developing the services that implement it. In such scenarios MockingBird helps you by generating a complete mock service that you can test against while development is proceeding.  Additionally some products do not lend themselves to easy &amp;#39;mocking&amp;#39; (examples: BizTalk, Sharepoint) . Also when dealing with &lt;b&gt;commercial&lt;/b&gt; web services, it is common to be provided a WSDL first and thats all you have till licenses are acquired and the service is installed. Again, by mocking these services up, your dev effort can get off the ground quicker.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Environment Isolation:&lt;/b&gt; For your build and automated test / CI process and other &amp;#39;dev&amp;#39; environments , it can be invaluable to be completely independent of any external service. This is where MockingBird comes in. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Integration Test Facilitation:&lt;/b&gt; With some commercial web services you are restricted to only a few environments to install and even then, setting up test data and reconfiguring the installation for functional testing can be laborious. Most non trivial web services also have databases and other configuration stores which are not easy to setup and tear down during testing. Enter MockingBird. &lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Setting up stub services can be very laborious and MockingBird aims to make this much simpler.  It is important to understand that MockingBird does NOT replace &lt;b&gt;unit testing&lt;/b&gt; where you may employ traditional mock or stub objects, rather it is a &lt;b&gt;functional/integration test facilitator&lt;/b&gt;.   &lt;br /&gt;&lt;br /&gt;Of course you do eventually need to perform functional and integration tests against the actual external system because it is not possible to simulate all the exceptions and data conditions of a line-of-business application in a mock service. Mockingbird just helps you get a working interface with a comprehensive base of response messages that will help in getting development off the ground.&lt;br /&gt;&lt;br /&gt;The documentation provides more details on these usage scenarios. Please read through the documentation to understand how the MockingBird toolset works in greater detail.&lt;br /&gt;
&lt;h3&gt;What does it look like and what&amp;#39;s inside the box ?&lt;/h3&gt;At a very high level the system looks like the illustration below&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=mockingbird&amp;DownloadId=111482" alt="v2_Arch_And_Design_Small.png" title="v2_Arch_And_Design_Small.png" /&gt;&lt;br /&gt;&lt;br /&gt;The only requirement for the system to work right &lt;b&gt;out of the box&lt;/b&gt; is a “model” XML file representing the endpoint (and the Configurator module can generate this automatically from a given WSDL) &lt;br /&gt;&lt;br /&gt;There are 3 main components of MockingBird at this time (and many more to come)
&lt;ul&gt;&lt;li&gt;A &lt;b&gt;Service Simulator&lt;/b&gt; app which is comprised of - An ASP.NET HttpHandler, A WCF message Interceptor, A WCF SimulatorHost console (for non Http protocol support) and all these are backed up by a generic &lt;b&gt;Simulation Framework&lt;/b&gt; which is configured to return pre-defined responses using a &lt;b&gt;model&lt;/b&gt; file for each endpoint that is being simulated.&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;Service Studio&lt;/b&gt; application that has 3 main modules 
&lt;ul&gt;&lt;li&gt;A module to pick a WSDL and automatically generate a complete default mock service.&lt;/li&gt;
&lt;li&gt;A module to parse a given WSDL and generate sample requests and responses and help in setting up a mock service quickly. &lt;/li&gt;
&lt;li&gt;A module to invoke the test services or remote services and check the responses.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;XML Instance Generation&lt;/b&gt; library that is used in the &lt;b&gt;Service Studio&lt;/b&gt; but can also be used independently.&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Please refer to the comprehensive documentation (included with the download package) to understand how to install it, how it works and how to extend it.&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;The primary areas that we are targeting for the future are&lt;br /&gt;(1) Structural changes to enable extensibility and customization&lt;br /&gt;(2) Upgrade of platform to .NET 4 and Windows Server AppFabric&lt;br /&gt;(3) Extending this to provide mock BizTalk adapters via the WCF LOB Adapter SDK&lt;br /&gt;(4) A better UI (preferably WPF) to help setup, configure and manage the mock services.&lt;br /&gt;(5) REST services, oDATA support&lt;br /&gt;(6) Azure &lt;br /&gt;&lt;br /&gt;Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Tue, 17 Aug 2010 11:19:36 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20100817111936A</guid></item><item><title>Updated Wiki: Home</title><link>http://mockingbird.codeplex.com/wikipage?version=68</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;What is MockingBird?&lt;/h2&gt;&lt;b&gt;MockingBird Service Simulator&lt;/b&gt; is a configurable message interceptor backed by a generic simulation engine that can act as a stand in for any web service. It also includes a set of tools to help build and test mock services. &lt;br /&gt;
&lt;h2&gt;Current Release - V2 RTM&lt;/h2&gt;&lt;b&gt;V2.0 RTM&lt;/b&gt; is now available. The new features of this release (post RC) are the addition of a Service Configurator module which allows you to pick a WSDL (on file or from a running service) and automatically generate a default mock service.  &lt;br /&gt;&lt;br /&gt;Please refer to the Documentation tab of the workspace for notes on pre-requisites, deployment and other documentation.&lt;br /&gt;
&lt;h2&gt;Usage Scenarios&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Contract First Development:&lt;/b&gt; In many development/integration scenarios it is common to define a WSDL first for all your web services and then proceed with developing the services that implement it. In such scenarios MockingBird helps you by generating a complete mock service that you can test against while development is proceeding.  Additionally some products do not lend themselves to easy &amp;#39;mocking&amp;#39; (examples: BizTalk, Sharepoint) . Also when dealing with &lt;b&gt;commercial&lt;/b&gt; web services, it is common to be provided a WSDL first and thats all you have till licenses are acquired and the service is installed. Again, by mocking these services up, your dev effort can get off the ground quicker.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Environment Isolation:&lt;/b&gt; For your build and automated test / CI process and other &amp;#39;dev&amp;#39; environments , it can be invaluable to be completely independent of any external service. This is where MockingBird comes in. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Integration Test Facilitation:&lt;/b&gt; With some commercial web services you are restricted to only a few environments to install and even then, setting up test data and reconfiguring the installation for functional testing can be laborious. Most non trivial web services also have databases and other configuration stores which are not easy to setup and tear down during testing. Enter MockingBird. &lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Setting up stub services can be very laborious and MockingBird aims to make this much simpler.  It is important to understand that MockingBird does NOT replace &lt;b&gt;unit testing&lt;/b&gt; where you may employ traditional mock or stub objects, rather it is a &lt;b&gt;functional/integration test facilitator&lt;/b&gt;.   &lt;br /&gt;&lt;br /&gt;Of course you do eventually need to perform functional and integration tests against the actual external system because it is not possible to simulate all the exceptions and data conditions of a line-of-business application in a mock service. Mockingbird just helps you get a working interface with a comprehensive base of response messages that will help in getting development off the ground.&lt;br /&gt;&lt;br /&gt;The documentation provides more details on these usage scenarios. Please read through the documentation to understand how the MockingBird toolset works in greater detail.&lt;br /&gt;
&lt;h3&gt;What does it look like and what&amp;#39;s inside the box ?&lt;/h3&gt;At a very high level the system looks like the illustration below&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=mockingbird&amp;DownloadId=111482" alt="v2_Arch_And_Design_Small.png" title="v2_Arch_And_Design_Small.png" /&gt;&lt;br /&gt;&lt;br /&gt;The only requirement for the system to work right &lt;b&gt;out of the box&lt;/b&gt; is a “model” XML file representing the endpoint (and the Configurator module can generate this automatically from a given WSDL) &lt;br /&gt;&lt;br /&gt;There are 3 main components of MockingBird at this time (and many more to come)
&lt;ul&gt;&lt;li&gt;A &lt;b&gt;Service Simulator&lt;/b&gt; app which is comprised of - An ASP.NET HttpHandler, A WCF message Interceptor, A WCF SimulatorHost console (for non Http protocol support) and all these are backed up by a generic &lt;b&gt;Simulation Framework&lt;/b&gt; which is configured to return pre-defined responses using a &lt;b&gt;model&lt;/b&gt; file for each endpoint that is being simulated.&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;Service Studio&lt;/b&gt; application that has 3 main modules 
&lt;ul&gt;&lt;li&gt;A module to pick a WSDL and automatically generate a complete default mock service.&lt;/li&gt;
&lt;li&gt;A module to parse a given WSDL and generate sample requests and responses and help in setting up a mock service quickly. &lt;/li&gt;
&lt;li&gt;A module to invoke the test services or remote services and check the responses.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;XML Instance Generation&lt;/b&gt; library that is used in the &lt;b&gt;Service Studio&lt;/b&gt; but can also be used independently.&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Please refer to the comprehensive documentation (included with the download package) to understand how to install it, how it works and how to extend it.&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;The primary areas that we are targeting for the future are&lt;br /&gt;(1) Structural changes to enable extensibility and customization&lt;br /&gt;(2) Upgrade of platform to .NET 4 and Windows Server AppFabric&lt;br /&gt;(3) Extending this to provide mock BizTalk adapters via the WCF LOB Adapter SDK&lt;br /&gt;(4) A better UI (preferably WPF) to help setup, configure and manage the mock services.&lt;br /&gt;(5) REST services, oDATA support&lt;br /&gt;(6) Azure &lt;br /&gt;&lt;br /&gt;Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Tue, 17 Aug 2010 11:19:09 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20100817111909A</guid></item><item><title>Updated Wiki: Home</title><link>http://mockingbird.codeplex.com/wikipage?version=67</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;What is MockingBird?&lt;/h2&gt;&lt;b&gt;MockingBird Service Simulator&lt;/b&gt; is a configurable message interceptor backed by a generic simulation engine that can act as a stand in for any web service. It also includes a set of tools to help build and test mock services. &lt;br /&gt;
&lt;h2&gt;Current Release - V2 RTM&lt;/h2&gt;&lt;b&gt;V2.0 RTMC&lt;/b&gt; is now available. The new features of this release (post RC) are the addition of a Service Configurator module which allows you to pick a WSDL (on file or from a running service) and automatically generate a default mock service.  &lt;br /&gt;&lt;br /&gt;Please refer to the Documentation tab of the workspace for notes on pre-requisites, deployment and other documentation.&lt;br /&gt;
&lt;h2&gt;Usage Scenarios&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Contract First Development:&lt;/b&gt; In many development/integration scenarios it is common to define a WSDL first for all your web services and then proceed with developing the services that implement it. In such scenarios MockingBird helps you by generating a complete mock service that you can test against while development is proceeding.  Additionally some products do not lend themselves to easy &amp;#39;mocking&amp;#39; (examples: BizTalk, Sharepoint) . Also when dealing with &lt;b&gt;commercial&lt;/b&gt; web services, it is common to be provided a WSDL first and thats all you have till licenses are acquired and the service is installed. Again, by mocking these services up, your dev effort can get off the ground quicker.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Environment Isolation:&lt;/b&gt; For your build and automated test / CI process and other &amp;#39;dev&amp;#39; environments , it can be invaluable to be completely independent of any external service. This is where MockingBird comes in. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Integration Test Facilitation:&lt;/b&gt; With some commercial web services you are restricted to only a few environments to install and even then, setting up test data and reconfiguring the installation for functional testing can be laborious. Most non trivial web services also have databases and other configuration stores which are not easy to setup and tear down during testing. Enter MockingBird. &lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Setting up stub services can be very laborious and MockingBird aims to make this much simpler.  It is important to understand that MockingBird does NOT replace &lt;b&gt;unit testing&lt;/b&gt; where you may employ traditional mock or stub objects, rather it is a &lt;b&gt;functional/integration test facilitator&lt;/b&gt;.   &lt;br /&gt;&lt;br /&gt;Of course you do eventually need to perform functional and integration tests against the actual external system because it is not possible to simulate all the exceptions and data conditions of a line-of-business application in a mock service. Mockingbird just helps you get a working interface with a comprehensive base of response messages that will help in getting development off the ground.&lt;br /&gt;&lt;br /&gt;The documentation provides more details on these usage scenarios. Please read through the documentation to understand how the MockingBird toolset works in greater detail.&lt;br /&gt;
&lt;h3&gt;What does it look like and what&amp;#39;s inside the box ?&lt;/h3&gt;At a very high level the system looks like the illustration below&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=mockingbird&amp;DownloadId=111482" alt="v2_Arch_And_Design_Small.png" title="v2_Arch_And_Design_Small.png" /&gt;&lt;br /&gt;&lt;br /&gt;The only requirement for the system to work right &lt;b&gt;out of the box&lt;/b&gt; is a “model” XML file representing the endpoint (and the Configurator module can generate this automatically from a given WSDL) &lt;br /&gt;&lt;br /&gt;There are 3 main components of MockingBird at this time (and many more to come)
&lt;ul&gt;&lt;li&gt;A &lt;b&gt;Service Simulator&lt;/b&gt; app which is comprised of - An ASP.NET HttpHandler, A WCF message Interceptor, A WCF SimulatorHost console (for non Http protocol support) and all these are backed up by a generic &lt;b&gt;Simulation Framework&lt;/b&gt; which is configured to return pre-defined responses using a &lt;b&gt;model&lt;/b&gt; file for each endpoint that is being simulated.&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;Service Studio&lt;/b&gt; application that has 3 main modules 
&lt;ul&gt;&lt;li&gt;A module to pick a WSDL and automatically generate a complete default mock service.&lt;/li&gt;
&lt;li&gt;A module to parse a given WSDL and generate sample requests and responses and help in setting up a mock service quickly. &lt;/li&gt;
&lt;li&gt;A module to invoke the test services or remote services and check the responses.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;XML Instance Generation&lt;/b&gt; library that is used in the &lt;b&gt;Service Studio&lt;/b&gt; but can also be used independently.&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Please refer to the comprehensive documentation (included with the download package) to understand how to install it, how it works and how to extend it.&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;The primary areas that we are targeting for the future are&lt;br /&gt;(1) Structural changes to enable extensibility and customization&lt;br /&gt;(2) Upgrade of platform to .NET 4 and Windows Server AppFabric&lt;br /&gt;(3) Extending this to provide mock BizTalk adapters via the WCF LOB Adapter SDK&lt;br /&gt;(4) A better UI (preferably WPF) to help setup, configure and manage the mock services.&lt;br /&gt;(5) REST services, oDATA support&lt;br /&gt;(6) Azure &lt;br /&gt;&lt;br /&gt;Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Tue, 17 Aug 2010 11:18:42 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20100817111842A</guid></item><item><title>Updated Wiki: Documentation</title><link>http://mockingbird.codeplex.com/documentation?version=2</link><description>&lt;div class="wikidoc"&gt;&lt;h3&gt;Platform Considerations*&lt;/h3&gt;If you are using this on Win7 or Win2008/R2 (Basically IIS7.x) then the app pool should be running in &lt;b&gt;Classic&lt;/b&gt; Mode. Also take a look at the Troubleshooting section of the Installation Guide for changes needed to the web.config as the way HttpHandlers are loaded has changed from previous versions of IIS. If it still doesnt work, please let me know and I will look into the issues.&lt;br /&gt;
&lt;h3&gt;Implementation Platform and Pre-requisites&lt;/h3&gt;This is written against .NET 3.5 and uses some C# 3.0 features as well as the &lt;a href="http://code.google.com/p/moq/" class="externalLink"&gt;MoQ&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; mock-object framework. The IoC mechanism is &lt;a href="http://www.codeplex.com/unity" class="externalLink"&gt;Unity&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; .  The test framework is &lt;a href="http://www.mbunit.com/" class="externalLink"&gt;MbUnit3.5&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. MbUnit 3.5 uses the &lt;a href="http://www.gallio.org/" class="externalLink"&gt;Gallio Test Automation Platform&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and these binaries are only required if you run the unit and functional tests (and the packages include the binaries used for development).  &lt;br /&gt;
&lt;h3&gt;Documentation&lt;/h3&gt;&lt;h4&gt;This Workspace&lt;/h4&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Quick%20Setup%20Guide&amp;referringTitle=Documentation"&gt;Quick Setup Guide&lt;/a&gt; - the 10 min overview to setting it up&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Detailed%20Scenarios&amp;referringTitle=Documentation"&gt;Detailed Scenarios&lt;/a&gt; - description of the Contract First approaches and the Environment Isolation&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Alternative%20approaches&amp;referringTitle=Documentation"&gt;Alternative approaches&lt;/a&gt; - what other approaches can be used for mocking services?&lt;/li&gt;&lt;/ol&gt;
&lt;h4&gt;Blog Articles&lt;/h4&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/14/introducing-mockingbird/" class="externalLink"&gt;Introducing MockingBird (announcing this tool)&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/22/waltzing-with-wsdl/" class="externalLink"&gt;Waltzing with WSDL (progress on the Studio GUI&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/07/mockingbird-beta/" class="externalLink"&gt;MockingBird Beta&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/22/mockingbird-beta-2/" class="externalLink"&gt;MockingBird Beta-2&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/11/21/mockingbird-v1-rtm/" class="externalLink"&gt;MockingBird v1 RTM&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/01/18/mockingbird-the-roadmap/" class="externalLink"&gt;MockingBird - The Roadmap&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/03/17/mockingbird-meets-wcf-in-v2-0-rc/" class="externalLink"&gt;MockingBird - v2.0 RC&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/08/12/mockingbird-v2-rtm/" class="externalLink"&gt;MockingBird - v2.0 RTM&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;

&lt;h3&gt;Acknowledgements, the team and the roadmap&lt;/h3&gt;&lt;h4&gt;The Original Idea&lt;/h4&gt;MockingBird started life as &lt;b&gt;MockWeb&lt;/b&gt; an internal HTTP based tool  that my former colleagues &lt;b&gt;Senthil Sai&lt;/b&gt; , &lt;b&gt;Will Struthers&lt;/b&gt; and I developed over 3 years ago. Credit must go to them the inspiration behind this tool. MockingBird now has a growing core team (Bram Veldhoen, Cormac O Brien, Shen Chauhan) and a number of &amp;#39;advisors.&lt;br /&gt;
&lt;h4&gt;Contributors &amp;amp; Supporters&lt;/h4&gt;I would also like to thank Nick Heppleston for his early adoption and feedback which helped build more quality into the tool. I would also like to thank Yossi Dahan and Michael Stephenson for their support.  A big thanks to the community for adopting MockingBird. Its an awesome experience to keep bumping into folks at user groups who are regular users of MockingBird and hear of their scenarios!!&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;As indicated on the home page , We are constantly looking for ways to extend the reach and utility of this tool. Of course, it all depends on time available outside regular work for all the current team.  If you would like to join and /or contribute code to extend MockingBird (especially in the primary areas i&amp;#39;ve listed) please do let me know.  Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Tue, 17 Aug 2010 11:15:57 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Documentation 20100817111557A</guid></item><item><title>Updated Wiki: Documentation</title><link>http://mockingbird.codeplex.com/documentation?version=1</link><description>&lt;div class="wikidoc"&gt;&lt;b&gt;Platform Considerations&lt;/b&gt;&lt;br /&gt;If you are using this on Win7 or Win2008/R2 (Basically IIS7.x) then the app pool should be running in &lt;b&gt;Classic&lt;/b&gt; Mode. Also take a look at the Troubleshooting section of the Installation Guide for changes needed to the web.config as the way HttpHandlers are loaded has changed from previous versions of IIS. If it still doesnt work, please let me know and I will look into the issues.&lt;br /&gt;
&lt;h3&gt;Implementation Platform and Pre-requisites&lt;/h3&gt;This is written against .NET 3.5 and uses some C# 3.0 features as well as the &lt;a href="http://code.google.com/p/moq/" class="externalLink"&gt;MoQ&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; mock-object framework. The IoC mechanism is &lt;a href="http://www.codeplex.com/unity" class="externalLink"&gt;Unity&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; .  The test framework is &lt;a href="http://www.mbunit.com/" class="externalLink"&gt;MbUnit3.5&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. MbUnit 3.5 uses the &lt;a href="http://www.gallio.org/" class="externalLink"&gt;Gallio Test Automation Platform&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and these binaries are only required if you run the unit and functional tests (and the packages include the binaries used for development).  &lt;br /&gt;
&lt;h3&gt;Documentation&lt;/h3&gt;&lt;h4&gt;This Workspace&lt;/h4&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Quick%20Setup%20Guide&amp;referringTitle=Documentation"&gt;Quick Setup Guide&lt;/a&gt; - the 10 min overview to setting it up&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Detailed%20Scenarios&amp;referringTitle=Documentation"&gt;Detailed Scenarios&lt;/a&gt; - description of the Contract First approaches and the Environment Isolation&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Alternative%20approaches&amp;referringTitle=Documentation"&gt;Alternative approaches&lt;/a&gt; - what other approaches can be used for mocking services?&lt;/li&gt;&lt;/ol&gt;
&lt;h4&gt;Blog Articles&lt;/h4&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/14/introducing-mockingbird/" class="externalLink"&gt;Introducing MockingBird (announcing this tool)&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/22/waltzing-with-wsdl/" class="externalLink"&gt;Waltzing with WSDL (progress on the Studio GUI&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/07/mockingbird-beta/" class="externalLink"&gt;MockingBird Beta&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/22/mockingbird-beta-2/" class="externalLink"&gt;MockingBird Beta-2&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/11/21/mockingbird-v1-rtm/" class="externalLink"&gt;MockingBird v1 RTM&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/01/18/mockingbird-the-roadmap/" class="externalLink"&gt;MockingBird - The Roadmap&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/03/17/mockingbird-meets-wcf-in-v2-0-rc/" class="externalLink"&gt;MockingBird - v2.0 RC&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/08/12/mockingbird-v2-rtm/" class="externalLink"&gt;MockingBird - v2.0 RTM&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;

&lt;h3&gt;Acknowledgements, the team and the roadmap&lt;/h3&gt;&lt;h4&gt;The Original Idea&lt;/h4&gt;MockingBird started life as &lt;b&gt;MockWeb&lt;/b&gt; an internal HTTP based tool  that my former colleagues &lt;b&gt;Senthil Sai&lt;/b&gt; , &lt;b&gt;Will Struthers&lt;/b&gt; and I developed over 3 years ago. Credit must go to them the inspiration behind this tool. MockingBird now has a growing core team (Bram Veldhoen, Cormac O Brien, Shen Chauhan) and a number of &amp;#39;advisors.&lt;br /&gt;
&lt;h4&gt;Contributors &amp;amp; Supporters&lt;/h4&gt;I would also like to thank Nick Heppleston for his early adoption and feedback which helped build more quality into the tool. I would also like to thank Yossi Dahan and Michael Stephenson for their support.  A big thanks to the community for adopting MockingBird. Its an awesome experience to keep bumping into folks at user groups who are regular users of MockingBird and hear of their scenarios!!&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;As indicated on the home page , We are constantly looking for ways to extend the reach and utility of this tool. Of course, it all depends on time available outside regular work for all the current team.  If you would like to join and /or contribute code to extend MockingBird (especially in the primary areas i&amp;#39;ve listed) please do let me know.  Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Tue, 17 Aug 2010 11:15:36 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Documentation 20100817111536A</guid></item><item><title>Updated Wiki: Home</title><link>http://mockingbird.codeplex.com/wikipage?version=66</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;What is MockingBird?&lt;/h2&gt;&lt;b&gt;MockingBird Service Simulator&lt;/b&gt; is a configurable message interceptor backed by a generic simulation engine that can act as a stand in for any web service. It also includes a set of tools to help build and test mock services. &lt;br /&gt;
&lt;h2&gt;Current Release - V2 RTM&lt;/h2&gt;&lt;b&gt;V2.0 RTMC&lt;/b&gt; is now available. The new features of this release (post RC) are the addition of a Service Configurator module which allows you to pick a WSDL (on file or from a running service) and automatically generate a default mock service. &lt;br /&gt;
&lt;h2&gt;Usage Scenarios&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Contract First Development:&lt;/b&gt; In many development/integration scenarios it is common to define a WSDL first for all your web services and then proceed with developing the services that implement it. In such scenarios MockingBird helps you by generating a complete mock service that you can test against while development is proceeding.  Additionally some products do not lend themselves to easy &amp;#39;mocking&amp;#39; (examples: BizTalk, Sharepoint) . Also when dealing with &lt;b&gt;commercial&lt;/b&gt; web services, it is common to be provided a WSDL first and thats all you have till licenses are acquired and the service is installed. Again, by mocking these services up, your dev effort can get off the ground quicker.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Environment Isolation:&lt;/b&gt; For your build and automated test / CI process and other &amp;#39;dev&amp;#39; environments , it can be invaluable to be completely independent of any external service. This is where MockingBird comes in. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Integration Test Facilitation:&lt;/b&gt; With some commercial web services you are restricted to only a few environments to install and even then, setting up test data and reconfiguring the installation for functional testing can be laborious. Most non trivial web services also have databases and other configuration stores which are not easy to setup and tear down during testing. Enter MockingBird. &lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Setting up stub services can be very laborious and MockingBird aims to make this much simpler.  It is important to understand that MockingBird does NOT replace &lt;b&gt;unit testing&lt;/b&gt; where you may employ traditional mock or stub objects, rather it is a &lt;b&gt;functional/integration test facilitator&lt;/b&gt;.   &lt;br /&gt;&lt;br /&gt;Of course you do eventually need to perform functional and integration tests against the actual external system because it is not possible to simulate all the exceptions and data conditions of a line-of-business application in a mock service. Mockingbird just helps you get a working interface with a comprehensive base of response messages that will help in getting development off the ground.&lt;br /&gt;&lt;br /&gt;The documentation provides more details on these usage scenarios. Please read through the documentation to understand how the MockingBird toolset works in greater detail.&lt;br /&gt;
&lt;h3&gt;What does it look like and what&amp;#39;s inside the box ?&lt;/h3&gt;At a very high level the system looks like the illustration below&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=mockingbird&amp;DownloadId=111482" alt="v2_Arch_And_Design_Small.png" title="v2_Arch_And_Design_Small.png" /&gt;&lt;br /&gt;&lt;br /&gt;The only requirement for the system to work right &lt;b&gt;out of the box&lt;/b&gt; is a “model” file representing the endpoint. The model is currently in XML but there is potential for other representations in future such as XAML.&lt;br /&gt;&lt;br /&gt;There are 3 main components of MockingBird at this time (and many more to come)
&lt;ul&gt;&lt;li&gt;A &lt;b&gt;Service Simulator&lt;/b&gt; app which is comprised of - An ASP.NET HttpHandler, A WCF message Interceptor, A WCF SimulatorHost console (for non Http protocol support) and all these are backed up by a generic &lt;b&gt;Simulation Framework&lt;/b&gt; which is configured to return pre-defined responses using a &lt;b&gt;model&lt;/b&gt; file for each endpoint that is being simulated.&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;Service Studio&lt;/b&gt; application that has 3 main modules 
&lt;ul&gt;&lt;li&gt;A module to pick a WSDL and automatically generate a complete default mock service.&lt;/li&gt;
&lt;li&gt;A module to parse a given WSDL and generate sample requests and responses and help in setting up a mock service quickly. &lt;/li&gt;
&lt;li&gt;A module to invoke the test services or remote services and check the responses.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;XML Instance Generation&lt;/b&gt; library that is used in the &lt;b&gt;Service Studio&lt;/b&gt; but can also be used independently.&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Please refer to the comprehensive documentation (included with the download package) to understand how to install it, how it works and how to extend it.&lt;br /&gt;
&lt;h3&gt;Workspace Contents&lt;/h3&gt;
&lt;ol&gt;&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Quick%20Setup%20Guide&amp;referringTitle=Home"&gt;Quick Setup Guide&lt;/a&gt; - the 10 min overview to setting it up&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Detailed%20Scenarios&amp;referringTitle=Home"&gt;Detailed Scenarios&lt;/a&gt; - description of the Contract First approaches and the Environment Isolation&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Alternative%20approaches&amp;referringTitle=Home"&gt;Alternative approaches&lt;/a&gt; - what other approaches can be used for mocking services?&lt;/li&gt;&lt;/ol&gt;

&lt;h3&gt;Acknowledgements, the team and the roadmap&lt;/h3&gt;&lt;h4&gt;The Original Idea&lt;/h4&gt;MockingBird started life as &lt;b&gt;MockWeb&lt;/b&gt; an internal HTTP based tool  that my former colleagues &lt;b&gt;Senthil Sai&lt;/b&gt; , &lt;b&gt;Will Struthers&lt;/b&gt; and I developed over 3 years ago. Credit must go to them the inspiration behind this tool. MockingBird now has a growing core team (Bram Veldhoen, Cormac O Brien, Shen Chauhan) and a number of &amp;#39;advisors.&lt;br /&gt;
&lt;h4&gt;Contributors &amp;amp; Supporters&lt;/h4&gt;I would also like to thank Nick Heppleston for his early adoption and feedback which helped build more quality into the tool. I would also like to thank Yossi Dahan and Michael Stephenson for their support.  A big thanks to the community for adopting MockingBird. Its an awesome experience to keep bumping into folks at user groups who are regular users of MockingBird and hear of their scenarios!!&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;We are constantly looking for ways to extend the reach and utility of this tool. (Check out the &lt;b&gt;roadmap&lt;/b&gt; blog post linked above for more details on the plans)&lt;br /&gt;&lt;br /&gt;The primary areas that we are targeting for the future are&lt;br /&gt;(1) Structural changes to enable extensibility and customization&lt;br /&gt;(2) Extending this to provide mock BizTalk adapters via the WCF LOB Adapter SDK&lt;br /&gt;(3) A better UI (preferably WPF) to help setup, configure and manage the mock services.&lt;br /&gt;&lt;br /&gt;Of course, it all depends on time available outside regular work for all the current team.  If you would like to join and /or contribute code to extend MockingBird (especially in the primary areas i&amp;#39;ve listed) please do let me know.&lt;br /&gt;&lt;br /&gt;Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;br /&gt;
&lt;h3&gt;Blog Articles&lt;/h3&gt;My blog articles charting the progress of the development of this tool
&lt;ol&gt;&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/14/introducing-mockingbird/" class="externalLink"&gt;Introducing MockingBird (announcing this tool)&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/22/waltzing-with-wsdl/" class="externalLink"&gt;Waltzing with WSDL (progress on the Studio GUI&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/07/mockingbird-beta/" class="externalLink"&gt;MockingBird Beta&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/22/mockingbird-beta-2/" class="externalLink"&gt;MockingBird Beta-2&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/11/21/mockingbird-v1-rtm/" class="externalLink"&gt;MockingBird v1 RTM&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/01/18/mockingbird-the-roadmap/" class="externalLink"&gt;MockingBird - The Roadmap&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/03/17/mockingbird-meets-wcf-in-v2-0-rc/" class="externalLink"&gt;MockingBird - v2.0 RC&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/08/12/mockingbird-v2-rtm/" class="externalLink"&gt;MockingBird - v2.0 RTM&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;

&lt;h3&gt;Platform and Pre-requisites&lt;/h3&gt;This is written against .NET 3.5 and uses some C# 3.0 features as well as the &lt;a href="http://code.google.com/p/moq/" class="externalLink"&gt;MoQ&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; mock-object framework. The IoC mechanism is &lt;a href="http://www.codeplex.com/unity" class="externalLink"&gt;Unity&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; .  The test framework is &lt;a href="http://www.mbunit.com/" class="externalLink"&gt;MbUnit3.5&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. MbUnit 3.5 uses the &lt;a href="http://www.gallio.org/" class="externalLink"&gt;Gallio Test Automation Platform&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and these binaries are only required if you run the unit and functional tests (and the packages include the binaries used for development).  &lt;br /&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Tue, 17 Aug 2010 11:06:28 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20100817110628A</guid></item><item><title>Updated Wiki: Home</title><link>http://mockingbird.codeplex.com/wikipage?version=65</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;What is MockingBird?&lt;/h2&gt;MockingBird is a tool-set for mocking web services. The core engine is essentially a configurable message interceptor (backed by a generic simulation engine) that can act as a stand in for any web service. &lt;br /&gt;&lt;br /&gt;The 3 primary usage scenarios for MockingBird are
&lt;ul&gt;&lt;li&gt;Contract First development&lt;/li&gt;
&lt;li&gt;Isolation of build &amp;amp; dev servers from external dependencies.&lt;/li&gt;
&lt;li&gt;As an &lt;b&gt;integration test facilitator&lt;/b&gt; &lt;/li&gt;&lt;/ul&gt;

&lt;h2&gt;Current Release - V2 RTM&lt;/h2&gt;&lt;b&gt;V2.0 RTMC&lt;/b&gt; is now available. The new features of this release (post RC) are the addition of a Service Configurator module which allows you to pick a WSDL (on file or from a running service) and automatically generate a default mock service. &lt;br /&gt;
&lt;h4&gt;Deployment&lt;/h4&gt;There are now 3 installers. 1 is for the Web App, 1 for the Console Host and 1 for the Studio. Refer to the documentation for the short walkthrough on how to install and use MockingBird.  There is also a &lt;a href="http://mockingbird.codeplex.com/wikipage?title=Quick%20Setup%20Guide&amp;referringTitle=Home"&gt;Quick Setup Guide&lt;/a&gt; here on the site to give you a high level overview of what&amp;#39;s involved in setting this up. If you use the default settings, you can just click through the installers, do a couple more steps and  you are ready to roll.  &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Platform Considerations&lt;/b&gt;&lt;br /&gt;If you are using this on Win7 or Win2008/R2 (Basically IIS7.x) then the app pool should be running in &lt;b&gt;Classic&lt;/b&gt; Mode. Also take a look at the Troubleshooting section of the Installation Guide for changes needed to the web.config as the way HttpHandlers are loaded has changed from previous versions of IIS. If it still doesnt work, please let me know and I will look into the issues.&lt;br /&gt;
&lt;h3&gt;Why should I care? - The Elevator Pitch for MockingBird&lt;/h3&gt;Consider the scenario where you are given the WSDL for a third-party web-service but no functioning system is available yet (it may be a brand new service or perhaps dev/site licenses are being negotiated). So if you need to get on with development immediately, what do you code against? If you are into TDD &amp;amp; MockObjects you may look to mock up an interface corresponding to the WSDL and develop against that.  But you may not be using a TDD and mock-objects oriented approach. Even if you do resort to mock objects, that will sort your unit tests out but for the integration testing it may not be possible to target the actual web service (for various reasons) Or it may be that you are maintaining/enhancing an existing system that wasn’t coded against interfaces so mocking may not be possible. Or what if you are a BizTalk developer? You cannot mock/inject dependencies into your orchestrations and other components (well, except for pipeline components, but thats another story)!! &lt;br /&gt;&lt;br /&gt;In another scenario, you may be integrating with a third party webservice (that maybe fronting a LOB application) and setting up a build server and multiple environments (DEV, TEST, UAT etc). But now the vendor says you can only have one license for their web service. Now how do you run DEV, TEST, UAT in parallel with different data sets? Sometimes you may have more than one license, but the service instances may be shared amongst different departments and like many LOB applications that instance may be subject to operational and maintenance schedules that clash with our build cycles? Your build server (and test process)  is then completely exposed to something you don’t control. &lt;br /&gt;&lt;br /&gt;Being able to set up complete mock services is invaluable in these scenarios. Unfortunately there aren&amp;#39;t many tools available to help with this so we have to resort to manually coding mock services. MockingBird aims to make it easy and quick to build configurable mock services.  Now there is no need to mess with WSDL.exe and svcutil to generate server side stubs and manually add logic. Simply drop in an XML file representing your service behavior, put in a couple of configuration entries and you&amp;#39;re ready to go with a new service endpoint. &lt;br /&gt;&lt;br /&gt;Of course you do eventually need to perform functional and integration tests against the actual external system because it is not possible to simulate all the exceptions and data conditions of a line-of-business application in a mock service. Mockingbird just helps you get a working interface with a comprehensive base of response messages that will help in getting development off the ground.&lt;br /&gt;&lt;br /&gt;Please read through the documentation to understand how the MockingBird toolset works in greater detail.&lt;br /&gt;
&lt;h3&gt;What does it look like and what&amp;#39;s inside the box ?&lt;/h3&gt;At a very high level the system looks like the illustration below&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=mockingbird&amp;DownloadId=111482" alt="v2_Arch_And_Design_Small.png" title="v2_Arch_And_Design_Small.png" /&gt;&lt;br /&gt;&lt;br /&gt;The only requirement for the system to work right &lt;b&gt;out of the box&lt;/b&gt; is a “model” file representing the endpoint. The model is currently in XML but there is potential for other representations in future such as XAML.&lt;br /&gt;&lt;br /&gt;There are 3 main components of MockingBird at this time (and many more to come)
&lt;ul&gt;&lt;li&gt;A &lt;b&gt;Service Simulator&lt;/b&gt; app which is comprised of - An ASP.NET HttpHandler, A WCF message Interceptor, A WCF SimulatorHost console (for non Http protocol support) and all these are backed up by a generic &lt;b&gt;Simulation Framework&lt;/b&gt; which is configured to return pre-defined responses using a &lt;b&gt;model&lt;/b&gt; file for each endpoint that is being simulated.&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;Service Studio&lt;/b&gt; application that has 3 main modules 
&lt;ul&gt;&lt;li&gt;A module to pick a WSDL and automatically generate a complete default mock service.&lt;/li&gt;
&lt;li&gt;A module to parse a given WSDL and generate sample requests and responses and help in setting up a mock service quickly. &lt;/li&gt;
&lt;li&gt;A module to invoke the test services or remote services and check the responses.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;XML Instance Generation&lt;/b&gt; library that is used in the &lt;b&gt;Service Studio&lt;/b&gt; but can also be used independently.&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Please refer to the comprehensive documentation (included with the download package) to understand how to install it, how it works and how to extend it.&lt;br /&gt;
&lt;h3&gt;Workspace Contents&lt;/h3&gt;
&lt;ol&gt;&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Quick%20Setup%20Guide&amp;referringTitle=Home"&gt;Quick Setup Guide&lt;/a&gt; - the 10 min overview to setting it up&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Detailed%20Scenarios&amp;referringTitle=Home"&gt;Detailed Scenarios&lt;/a&gt; - description of the Contract First approaches and the Environment Isolation&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Alternative%20approaches&amp;referringTitle=Home"&gt;Alternative approaches&lt;/a&gt; - what other approaches can be used for mocking services?&lt;/li&gt;&lt;/ol&gt;

&lt;h3&gt;Acknowledgements, the team and the roadmap&lt;/h3&gt;&lt;h4&gt;The Original Idea&lt;/h4&gt;MockingBird started life as &lt;b&gt;MockWeb&lt;/b&gt; an internal HTTP based tool  that my former colleagues &lt;b&gt;Senthil Sai&lt;/b&gt; , &lt;b&gt;Will Struthers&lt;/b&gt; and I developed over 3 years ago. Credit must go to them the inspiration behind this tool. MockingBird now has a growing core team (Bram Veldhoen, Cormac O Brien, Shen Chauhan) and a number of &amp;#39;advisors.&lt;br /&gt;
&lt;h4&gt;Contributors &amp;amp; Supporters&lt;/h4&gt;I would also like to thank Nick Heppleston for his early adoption and feedback which helped build more quality into the tool. I would also like to thank Yossi Dahan and Michael Stephenson for their support.  A big thanks to the community for adopting MockingBird. Its an awesome experience to keep bumping into folks at user groups who are regular users of MockingBird and hear of their scenarios!!&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;We are constantly looking for ways to extend the reach and utility of this tool. (Check out the &lt;b&gt;roadmap&lt;/b&gt; blog post linked above for more details on the plans)&lt;br /&gt;&lt;br /&gt;The primary areas that we are targeting for the future are&lt;br /&gt;(1) Structural changes to enable extensibility and customization&lt;br /&gt;(2) Extending this to provide mock BizTalk adapters via the WCF LOB Adapter SDK&lt;br /&gt;(3) A better UI (preferably WPF) to help setup, configure and manage the mock services.&lt;br /&gt;&lt;br /&gt;Of course, it all depends on time available outside regular work for all the current team.  If you would like to join and /or contribute code to extend MockingBird (especially in the primary areas i&amp;#39;ve listed) please do let me know.&lt;br /&gt;&lt;br /&gt;Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;br /&gt;
&lt;h3&gt;Blog Articles&lt;/h3&gt;My blog articles charting the progress of the development of this tool
&lt;ol&gt;&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/14/introducing-mockingbird/" class="externalLink"&gt;Introducing MockingBird (announcing this tool)&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/22/waltzing-with-wsdl/" class="externalLink"&gt;Waltzing with WSDL (progress on the Studio GUI&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/07/mockingbird-beta/" class="externalLink"&gt;MockingBird Beta&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/22/mockingbird-beta-2/" class="externalLink"&gt;MockingBird Beta-2&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/11/21/mockingbird-v1-rtm/" class="externalLink"&gt;MockingBird v1 RTM&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/01/18/mockingbird-the-roadmap/" class="externalLink"&gt;MockingBird - The Roadmap&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/03/17/mockingbird-meets-wcf-in-v2-0-rc/" class="externalLink"&gt;MockingBird - v2.0 RC&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;

&lt;h3&gt;Platform and Pre-requisites&lt;/h3&gt;This is written against .NET 3.5 and uses some C# 3.0 features as well as the &lt;a href="http://code.google.com/p/moq/" class="externalLink"&gt;MoQ&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; mock-object framework. The IoC mechanism is &lt;a href="http://www.codeplex.com/unity" class="externalLink"&gt;Unity&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; .  The test framework is &lt;a href="http://www.mbunit.com/" class="externalLink"&gt;MbUnit3.5&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. MbUnit 3.5 uses the &lt;a href="http://www.gallio.org/" class="externalLink"&gt;Gallio Test Automation Platform&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and these binaries are only required if you run the unit and functional tests (and the packages include the binaries used for development).  &lt;br /&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Fri, 13 Aug 2010 13:40:08 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20100813014008P</guid></item><item><title>Updated Wiki: Home</title><link>http://mockingbird.codeplex.com/wikipage?version=64</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;What is MockingBird?&lt;/h2&gt;MockingBird is a tool-set for mocking web services. The core engine is essentially a configurable message interceptor (backed by a generic simulation engine) that can act as a stand in for any web service. &lt;br /&gt;&lt;br /&gt;The 3 primary usage scenarios for MockingBird are
&lt;ul&gt;&lt;li&gt;Contract First development&lt;/li&gt;
&lt;li&gt;Isolation of build &amp;amp; dev servers from external dependencies.&lt;/li&gt;
&lt;li&gt;As an &lt;b&gt;integration test facilitator&lt;/b&gt; &lt;/li&gt;&lt;/ul&gt;

&lt;h2&gt;Current Release - V2 RTM&lt;/h2&gt;&lt;b&gt;V2.0 RTMC&lt;/b&gt; is now available. The new features of this release (post RC) are the addition of a Service Configurator module which allows you to pick a WSDL (on file or from a running service) and automatically generate a default mock service. &lt;br /&gt;
&lt;h4&gt;Deployment&lt;/h4&gt;There are now 3 installers. 1 is for the Web App, 1 for the Console Host and 1 for the Studio. Refer to the documentation for the short walkthrough on how to install and use MockingBird.  There is also a &lt;a href="http://mockingbird.codeplex.com/wikipage?title=Quick%20Setup%20Guide&amp;referringTitle=Home"&gt;Quick Setup Guide&lt;/a&gt; here on the site to give you a high level overview of what&amp;#39;s involved in setting this up. If you use the default settings, you can just click through the installers, do a couple more steps and  you are ready to roll.  &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Platform Considerations&lt;/b&gt;&lt;br /&gt;If you are using this on Win7 or Win2008/R2 (Basically IIS7.x) then the app pool should be running in &lt;b&gt;Classic&lt;/b&gt; Mode. Also take a look at the Troubleshooting section of the Installation Guide for changes needed to the web.config as the way HttpHandlers are loaded has changed from previous versions of IIS&lt;br /&gt;
&lt;h3&gt;Why should I care? - The Elevator Pitch for MockingBird&lt;/h3&gt;Consider the scenario where you are given the WSDL for a third-party web-service but no functioning system is available yet (it may be a brand new service or perhaps dev/site licenses are being negotiated). So if you need to get on with development immediately, what do you code against? If you are into TDD &amp;amp; MockObjects you may look to mock up an interface corresponding to the WSDL and develop against that.  But you may not be using a TDD and mock-objects oriented approach. Even if you do resort to mock objects, that will sort your unit tests out but for the integration testing it may not be possible to target the actual web service (for various reasons) Or it may be that you are maintaining/enhancing an existing system that wasn’t coded against interfaces so mocking may not be possible. Or what if you are a BizTalk developer? You cannot mock/inject dependencies into your orchestrations and other components (well, except for pipeline components, but thats another story)!! &lt;br /&gt;&lt;br /&gt;In another scenario, you may be integrating with a third party webservice (that maybe fronting a LOB application) and setting up a build server and multiple environments (DEV, TEST, UAT etc). But now the vendor says you can only have one license for their web service. Now how do you run DEV, TEST, UAT in parallel with different data sets? Sometimes you may have more than one license, but the service instances may be shared amongst different departments and like many LOB applications that instance may be subject to operational and maintenance schedules that clash with our build cycles? Your build server (and test process)  is then completely exposed to something you don’t control. &lt;br /&gt;&lt;br /&gt;Being able to set up complete mock services is invaluable in these scenarios. Unfortunately there aren&amp;#39;t many tools available to help with this so we have to resort to manually coding mock services. MockingBird aims to make it easy and quick to build configurable mock services.  Now there is no need to mess with WSDL.exe and svcutil to generate server side stubs and manually add logic. Simply drop in an XML file representing your service behavior, put in a couple of configuration entries and you&amp;#39;re ready to go with a new service endpoint. &lt;br /&gt;&lt;br /&gt;Of course you do eventually need to perform functional and integration tests against the actual external system because it is not possible to simulate all the exceptions and data conditions of a line-of-business application in a mock service. Mockingbird just helps you get a working interface with a comprehensive base of response messages that will help in getting development off the ground.&lt;br /&gt;&lt;br /&gt;Please read through the documentation to understand how the MockingBird toolset works in greater detail.&lt;br /&gt;
&lt;h3&gt;What does it look like and what&amp;#39;s inside the box ?&lt;/h3&gt;At a very high level the system looks like the illustration below&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=mockingbird&amp;DownloadId=111482" alt="v2_Arch_And_Design_Small.png" title="v2_Arch_And_Design_Small.png" /&gt;&lt;br /&gt;&lt;br /&gt;The only requirement for the system to work right &lt;b&gt;out of the box&lt;/b&gt; is a “model” file representing the endpoint. The model is currently in XML but there is potential for other representations in future such as XAML.&lt;br /&gt;&lt;br /&gt;There are 3 main components of MockingBird at this time (and many more to come)
&lt;ul&gt;&lt;li&gt;A &lt;b&gt;Service Simulator&lt;/b&gt; app which is comprised of - An ASP.NET HttpHandler, A WCF message Interceptor, A WCF SimulatorHost console (for non Http protocol support) and all these are backed up by a generic &lt;b&gt;Simulation Framework&lt;/b&gt; which is configured to return pre-defined responses using a &lt;b&gt;model&lt;/b&gt; file for each endpoint that is being simulated.&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;Service Studio&lt;/b&gt; application that has 3 main modules 
&lt;ul&gt;&lt;li&gt;A module to pick a WSDL and automatically generate a complete default mock service.&lt;/li&gt;
&lt;li&gt;A module to parse a given WSDL and generate sample requests and responses and help in setting up a mock service quickly. &lt;/li&gt;
&lt;li&gt;A module to invoke the test services or remote services and check the responses.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;XML Instance Generation&lt;/b&gt; library that is used in the &lt;b&gt;Service Studio&lt;/b&gt; but can also be used independently.&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Please refer to the comprehensive documentation (included with the download package) to understand how to install it, how it works and how to extend it.&lt;br /&gt;
&lt;h3&gt;Workspace Contents&lt;/h3&gt;
&lt;ol&gt;&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Quick%20Setup%20Guide&amp;referringTitle=Home"&gt;Quick Setup Guide&lt;/a&gt; - the 10 min overview to setting it up&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Detailed%20Scenarios&amp;referringTitle=Home"&gt;Detailed Scenarios&lt;/a&gt; - description of the Contract First approaches and the Environment Isolation&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Alternative%20approaches&amp;referringTitle=Home"&gt;Alternative approaches&lt;/a&gt; - what other approaches can be used for mocking services?&lt;/li&gt;&lt;/ol&gt;

&lt;h3&gt;Acknowledgements, the team and the roadmap&lt;/h3&gt;&lt;h4&gt;The Original Idea&lt;/h4&gt;MockingBird started life as &lt;b&gt;MockWeb&lt;/b&gt; an internal HTTP based tool  that my former colleagues &lt;b&gt;Senthil Sai&lt;/b&gt; , &lt;b&gt;Will Struthers&lt;/b&gt; and I developed over 3 years ago. Credit must go to them the inspiration behind this tool. MockingBird now has a growing core team (Bram Veldhoen, Cormac O Brien, Shen Chauhan) and a number of &amp;#39;advisors.&lt;br /&gt;
&lt;h4&gt;Contributors &amp;amp; Supporters&lt;/h4&gt;I would also like to thank Nick Heppleston for his early adoption and feedback which helped build more quality into the tool. I would also like to thank Yossi Dahan and Michael Stephenson for their support.  A big thanks to the community for adopting MockingBird. Its an awesome experience to keep bumping into folks at user groups who are regular users of MockingBird and hear of their scenarios!!&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;We are constantly looking for ways to extend the reach and utility of this tool. (Check out the &lt;b&gt;roadmap&lt;/b&gt; blog post linked above for more details on the plans)&lt;br /&gt;&lt;br /&gt;The primary areas that we are targeting for the future are&lt;br /&gt;(1) Structural changes to enable extensibility and customization&lt;br /&gt;(2) Extending this to provide mock BizTalk adapters via the WCF LOB Adapter SDK&lt;br /&gt;(3) A better UI (preferably WPF) to help setup, configure and manage the mock services.&lt;br /&gt;&lt;br /&gt;Of course, it all depends on time available outside regular work for all the current team.  If you would like to join and /or contribute code to extend MockingBird (especially in the primary areas i&amp;#39;ve listed) please do let me know.&lt;br /&gt;&lt;br /&gt;Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;br /&gt;
&lt;h3&gt;Blog Articles&lt;/h3&gt;My blog articles charting the progress of the development of this tool
&lt;ol&gt;&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/14/introducing-mockingbird/" class="externalLink"&gt;Introducing MockingBird (announcing this tool)&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/22/waltzing-with-wsdl/" class="externalLink"&gt;Waltzing with WSDL (progress on the Studio GUI&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/07/mockingbird-beta/" class="externalLink"&gt;MockingBird Beta&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/22/mockingbird-beta-2/" class="externalLink"&gt;MockingBird Beta-2&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/11/21/mockingbird-v1-rtm/" class="externalLink"&gt;MockingBird v1 RTM&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/01/18/mockingbird-the-roadmap/" class="externalLink"&gt;MockingBird - The Roadmap&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/03/17/mockingbird-meets-wcf-in-v2-0-rc/" class="externalLink"&gt;MockingBird - v2.0 RC&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;

&lt;h3&gt;Platform and Pre-requisites&lt;/h3&gt;This is written against .NET 3.5 and uses some C# 3.0 features as well as the &lt;a href="http://code.google.com/p/moq/" class="externalLink"&gt;MoQ&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; mock-object framework. The IoC mechanism is &lt;a href="http://www.codeplex.com/unity" class="externalLink"&gt;Unity&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; .  The test framework is &lt;a href="http://www.mbunit.com/" class="externalLink"&gt;MbUnit3.5&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. MbUnit 3.5 uses the &lt;a href="http://www.gallio.org/" class="externalLink"&gt;Gallio Test Automation Platform&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and these binaries are only required if you run the unit and functional tests (and the packages include the binaries used for development).  &lt;br /&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Fri, 13 Aug 2010 13:39:36 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20100813013936P</guid></item><item><title>Updated Wiki: Home</title><link>http://mockingbird.codeplex.com/wikipage?version=63</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;What is MockingBird?&lt;/h2&gt;MockingBird is a tool-set for mocking web services. The core engine is essentially a configurable message interceptor (backed by a generic simulation engine) that can act as a stand in for any web service. &lt;br /&gt;&lt;br /&gt;The 3 primary usage scenarios for MockingBird are
&lt;ul&gt;&lt;li&gt;Contract First development&lt;/li&gt;
&lt;li&gt;Isolation of build &amp;amp; dev servers from external dependencies.&lt;/li&gt;
&lt;li&gt;As an &lt;b&gt;integration test facilitator&lt;/b&gt; &lt;/li&gt;&lt;/ul&gt;

&lt;h2&gt;Current Release - V2 RTM&lt;/h2&gt;&lt;b&gt;V2.0 RTMC&lt;/b&gt; is now available. The new features of this release (post RC) are the addition of a Service Configurator module which allows you to pick a WSDL (on file or from a running service) and automatically generate a default mock service. &lt;br /&gt;
&lt;h4&gt;Deployment&lt;/h4&gt;There are now 3 installers. 1 is for the Web App, 1 for the Console Host and 1 for the Studio. Refer to the documentation for the short walkthrough on how to install and use MockingBird.  There is also a &lt;a href="http://mockingbird.codeplex.com/wikipage?title=Quick%20Setup%20Guide&amp;referringTitle=Home"&gt;Quick Setup Guide&lt;/a&gt; here on the site to give you a high level overview of what&amp;#39;s involved in setting this up. If you use the default settings, you can just click through the installers, do a couple more steps and  you are ready to roll.  &lt;br /&gt;
&lt;h3&gt;Why should I care? - The Elevator Pitch for MockingBird&lt;/h3&gt;Consider the scenario where you are given the WSDL for a third-party web-service but no functioning system is available yet (it may be a brand new service or perhaps dev/site licenses are being negotiated). So if you need to get on with development immediately, what do you code against? If you are into TDD &amp;amp; MockObjects you may look to mock up an interface corresponding to the WSDL and develop against that.  But you may not be using a TDD and mock-objects oriented approach. Even if you do resort to mock objects, that will sort your unit tests out but for the integration testing it may not be possible to target the actual web service (for various reasons) Or it may be that you are maintaining/enhancing an existing system that wasn’t coded against interfaces so mocking may not be possible. Or what if you are a BizTalk developer? You cannot mock/inject dependencies into your orchestrations and other components (well, except for pipeline components, but thats another story)!! &lt;br /&gt;&lt;br /&gt;In another scenario, you may be integrating with a third party webservice (that maybe fronting a LOB application) and setting up a build server and multiple environments (DEV, TEST, UAT etc). But now the vendor says you can only have one license for their web service. Now how do you run DEV, TEST, UAT in parallel with different data sets? Sometimes you may have more than one license, but the service instances may be shared amongst different departments and like many LOB applications that instance may be subject to operational and maintenance schedules that clash with our build cycles? Your build server (and test process)  is then completely exposed to something you don’t control. &lt;br /&gt;&lt;br /&gt;Being able to set up complete mock services is invaluable in these scenarios. Unfortunately there aren&amp;#39;t many tools available to help with this so we have to resort to manually coding mock services. MockingBird aims to make it easy and quick to build configurable mock services.  Now there is no need to mess with WSDL.exe and svcutil to generate server side stubs and manually add logic. Simply drop in an XML file representing your service behavior, put in a couple of configuration entries and you&amp;#39;re ready to go with a new service endpoint. &lt;br /&gt;&lt;br /&gt;Of course you do eventually need to perform functional and integration tests against the actual external system because it is not possible to simulate all the exceptions and data conditions of a line-of-business application in a mock service. Mockingbird just helps you get a working interface with a comprehensive base of response messages that will help in getting development off the ground.&lt;br /&gt;&lt;br /&gt;Please read through the documentation to understand how the MockingBird toolset works in greater detail.&lt;br /&gt;
&lt;h3&gt;What does it look like and what&amp;#39;s inside the box ?&lt;/h3&gt;At a very high level the system looks like the illustration below&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=mockingbird&amp;DownloadId=111482" alt="v2_Arch_And_Design_Small.png" title="v2_Arch_And_Design_Small.png" /&gt;&lt;br /&gt;&lt;br /&gt;The only requirement for the system to work right &lt;b&gt;out of the box&lt;/b&gt; is a “model” file representing the endpoint. The model is currently in XML but there is potential for other representations in future such as XAML.&lt;br /&gt;&lt;br /&gt;There are 3 main components of MockingBird at this time (and many more to come)
&lt;ul&gt;&lt;li&gt;A &lt;b&gt;Service Simulator&lt;/b&gt; app which is comprised of - An ASP.NET HttpHandler, A WCF message Interceptor, A WCF SimulatorHost console (for non Http protocol support) and all these are backed up by a generic &lt;b&gt;Simulation Framework&lt;/b&gt; which is configured to return pre-defined responses using a &lt;b&gt;model&lt;/b&gt; file for each endpoint that is being simulated.&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;Service Studio&lt;/b&gt; application that has 3 main modules 
&lt;ul&gt;&lt;li&gt;A module to pick a WSDL and automatically generate a complete default mock service.&lt;/li&gt;
&lt;li&gt;A module to parse a given WSDL and generate sample requests and responses and help in setting up a mock service quickly. &lt;/li&gt;
&lt;li&gt;A module to invoke the test services or remote services and check the responses.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;XML Instance Generation&lt;/b&gt; library that is used in the &lt;b&gt;Service Studio&lt;/b&gt; but can also be used independently.&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Please refer to the comprehensive documentation (included with the download package) to understand how to install it, how it works and how to extend it.&lt;br /&gt;
&lt;h3&gt;Workspace Contents&lt;/h3&gt;
&lt;ol&gt;&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Quick%20Setup%20Guide&amp;referringTitle=Home"&gt;Quick Setup Guide&lt;/a&gt; - the 10 min overview to setting it up&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Detailed%20Scenarios&amp;referringTitle=Home"&gt;Detailed Scenarios&lt;/a&gt; - description of the Contract First approaches and the Environment Isolation&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Alternative%20approaches&amp;referringTitle=Home"&gt;Alternative approaches&lt;/a&gt; - what other approaches can be used for mocking services?&lt;/li&gt;&lt;/ol&gt;

&lt;h3&gt;Acknowledgements, the team and the roadmap&lt;/h3&gt;&lt;h4&gt;The Original Idea&lt;/h4&gt;MockingBird started life as &lt;b&gt;MockWeb&lt;/b&gt; an internal HTTP based tool  that my former colleagues &lt;b&gt;Senthil Sai&lt;/b&gt; , &lt;b&gt;Will Struthers&lt;/b&gt; and I developed over 3 years ago. Credit must go to them the inspiration behind this tool. MockingBird now has a growing core team (Bram Veldhoen, Cormac O Brien, Shen Chauhan) and a number of &amp;#39;advisors.&lt;br /&gt;
&lt;h4&gt;Contributors &amp;amp; Supporters&lt;/h4&gt;I would also like to thank Nick Heppleston for his early adoption and feedback which helped build more quality into the tool. I would also like to thank Yossi Dahan and Michael Stephenson for their support.  A big thanks to the community for adopting MockingBird. Its an awesome experience to keep bumping into folks at user groups who are regular users of MockingBird and hear of their scenarios!!&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;We are constantly looking for ways to extend the reach and utility of this tool. (Check out the &lt;b&gt;roadmap&lt;/b&gt; blog post linked above for more details on the plans)&lt;br /&gt;&lt;br /&gt;The primary areas that we are targeting for the future are&lt;br /&gt;(1) Structural changes to enable extensibility and customization&lt;br /&gt;(2) Extending this to provide mock BizTalk adapters via the WCF LOB Adapter SDK&lt;br /&gt;(3) A better UI (preferably WPF) to help setup, configure and manage the mock services.&lt;br /&gt;&lt;br /&gt;Of course, it all depends on time available outside regular work for all the current team.  If you would like to join and /or contribute code to extend MockingBird (especially in the primary areas i&amp;#39;ve listed) please do let me know.&lt;br /&gt;&lt;br /&gt;Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;br /&gt;
&lt;h3&gt;Blog Articles&lt;/h3&gt;My blog articles charting the progress of the development of this tool
&lt;ol&gt;&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/14/introducing-mockingbird/" class="externalLink"&gt;Introducing MockingBird (announcing this tool)&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/22/waltzing-with-wsdl/" class="externalLink"&gt;Waltzing with WSDL (progress on the Studio GUI&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/07/mockingbird-beta/" class="externalLink"&gt;MockingBird Beta&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/22/mockingbird-beta-2/" class="externalLink"&gt;MockingBird Beta-2&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/11/21/mockingbird-v1-rtm/" class="externalLink"&gt;MockingBird v1 RTM&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/01/18/mockingbird-the-roadmap/" class="externalLink"&gt;MockingBird - The Roadmap&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/03/17/mockingbird-meets-wcf-in-v2-0-rc/" class="externalLink"&gt;MockingBird - v2.0 RC&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;

&lt;h3&gt;Platform and Pre-requisites&lt;/h3&gt;This is written against .NET 3.5 and uses some C# 3.0 features as well as the &lt;a href="http://code.google.com/p/moq/" class="externalLink"&gt;MoQ&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; mock-object framework. The IoC mechanism is &lt;a href="http://www.codeplex.com/unity" class="externalLink"&gt;Unity&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; .  The test framework is &lt;a href="http://www.mbunit.com/" class="externalLink"&gt;MbUnit3.5&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. MbUnit 3.5 uses the &lt;a href="http://www.gallio.org/" class="externalLink"&gt;Gallio Test Automation Platform&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and these binaries are only required if you run the unit and functional tests (and the packages include the binaries used for development).  &lt;br /&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Thu, 12 Aug 2010 13:10:40 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20100812011040P</guid></item><item><title>Updated Wiki: Quick Setup Guide</title><link>http://mockingbird.codeplex.com/wikipage?title=Quick Setup Guide&amp;version=12</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;Installation Packages &amp;amp; Physical Layout&lt;/h2&gt;
In the v2.0 RTM release, there are 2 MSIs for the Simulator Service (one that deploys the web application and one that deploys the Console Host) and another MSI for the Service Studio WinForms app.&lt;br /&gt;&lt;br /&gt;In terms of the physical layout MockingBird is manifested as follows&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;A virtual directory : This contains the SimulatorService.svc file (the WCF message interceptor)  and in the bin folder we have the Interceptor.dll which contains HttpHandler (implemented as a class that inherits the IHttpHandler interface rather than an .ashx). The .svc and the httpHandler both share the web.config and as explained in the technical documentation, there are a number of other .config files&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;A folder (usually installed into Program Files) containing the Console Host application and a testing app (also a console that fires off preset messages to the test endpoints that are hosted in the console app)&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;A folder (usually installed into Program Files) containing the Service Studio GUI application.&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;The datafiles folder containing a configuration subfolder and endpoints subfolder. This is available in both the web app install folder and the console app install folder.&lt;/li&gt;&lt;/ul&gt;

&lt;h2&gt;Installation Guide&lt;/h2&gt;This is a short description of what you need to get up and running with the tool. The documentation provides all the steps in detail explaning how to setup the system&lt;br /&gt;
&lt;h3&gt;Get and install the package&lt;/h3&gt;
(1) Run the setup of the web application which will create a virtual directory (by default). If you wish you can create a separate website and application pool but by default the system will install mockingbird into the defaultwebsite and use the DefaultAppPool.&lt;br /&gt;&lt;br /&gt;(2) Run the setup of the console host application.&lt;br /&gt;&lt;br /&gt;(3) Run the setup of the service studio.&lt;br /&gt;&lt;br /&gt;(4) Extract the datafiles..(Sample path: c:\inetpub\wwwroot\MockingBird\datafiles). This data files folder also contains a ‘sample’ end point which is required to verify the installation (and the verification is done using the Studio app). Once you are proficient with this app and don’t need it, you can delete this sample folder if necessary.&lt;br /&gt;&lt;br /&gt;(5) From a Powershell prompt (in the MockingBird directory) run the grantPermissions.ps1 script. This will give full control access to “Everyone” on the MockingBird data files folder. If you are not comfortable with giving such sweeping permissions, then feel free to change the script or manually ensure you give access to Network service or ASPNET user on the mockingbird datafiles folder   (Even the service studio user needs permission to these folders as it writes entries to the handlerMap.config file).&lt;br /&gt;&lt;br /&gt;
&lt;h3&gt;Update the configuration files&lt;/h3&gt;All the config files have been setup automatically to hold the default production settings, so if you use the defaults (install the web app into a virtual dir in the default website, use c:\inetpub\wwwroot\mockingbird as local path etc), then you wont need to change anything. However, if you have chosen other paths, then you need to edit the config files. &lt;br /&gt;&lt;br /&gt;Update your configuration files (found in the datafiles\configuration folder) as described in the installation guide. &lt;br /&gt;The files you need to modify are
&lt;ul&gt;&lt;li&gt;&lt;b&gt;web.config&lt;/b&gt; and &lt;b&gt;app.config&lt;/b&gt; : change this to add/modify endpoints for the WCF service.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;MockingBird.config&lt;/b&gt; : contains all system level information including file paths etc&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Logging Config&lt;/b&gt; : This may be either the &lt;b&gt;Log4net.config&lt;/b&gt; or &lt;b&gt;EntLibLogging.config&lt;/b&gt; depending on which logger you prefer.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Studio.config&lt;/b&gt;: The app config for the studio module pointing to test data locations etc. &lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;If you are extending the system, then you would need to update the &lt;b&gt;unity.config&lt;/b&gt; file as that lists all interfaces and maps them to the chosen implementations.&lt;br /&gt;
&lt;h4&gt;Changing the logger&lt;/h4&gt;The default logger is set to Log4Net. To change this, open the unity.config file, and look for the following line&lt;br /&gt;         &lt;b&gt;&amp;lt;type type=&amp;quot;ILogger&amp;quot; mapTo=&amp;quot;Log4NetLogger&amp;quot;&amp;gt;&lt;/b&gt;&lt;br /&gt;(This appears in 2 places: at the root level and at the named container level). Replace this with&lt;br /&gt;        &lt;b&gt;&amp;lt;type type=&amp;quot;ILogger&amp;quot; mapTo=&amp;quot;EntLibLogger&amp;quot;&amp;gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;If no logs are written at runtime, this maybe due to the log file being set to read-only. Note that the system always writes log messages to System Trace so by using a tool such as &lt;b&gt;DebugView&lt;/b&gt; it will be possible to monitor what&amp;#39;s going on. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Thu, 12 Aug 2010 13:08:35 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Quick Setup Guide 20100812010835P</guid></item><item><title>Updated Wiki: Quick Setup Guide</title><link>http://mockingbird.codeplex.com/wikipage?title=Quick Setup Guide&amp;version=11</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;Installation Packages &amp;amp; Physical Layout&lt;/h2&gt;
In the v2.0 RTM release, there are 2 MSIs for the Simulator Service (one that deploys the web application and one that deploys the Console Host) and another MSI for the Service Studio WinForms app.&lt;br /&gt;&lt;br /&gt;In terms of the physical layout MockingBird is manifested as follows&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;A virtual directory : This contains the SimulatorService.svc file (the WCF message interceptor)  and in the bin folder we have the Interceptor.dll which contains HttpHandler (implemented as a class that inherits the IHttpHandler interface rather than an .ashx). The .svc and the httpHandler both share the web.config and as explained in the technical documentation, there are a number of other .config files&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;A folder (usually installed into Program Files) containing the Console Host application and a testing app (also a console that fires off preset messages to the test endpoints that are hosted in the console app)&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;A folder (usually installed into Program Files) containing the Service Studio GUI application.&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;The datafiles folder containing a configuration subfolder and endpoints subfolder. This is available in both the web app install folder and the console app install folder.&lt;/li&gt;&lt;/ul&gt;

&lt;h2&gt;Installation Guide&lt;/h2&gt;This is a short description of what you need to get up and running with the tool. The documentation provides all the steps in detail explaning how to setup the system&lt;br /&gt;
&lt;h3&gt;Get and install the package&lt;/h3&gt;
(1) Run the setup of the web application which will create a virtual directory (by default). If you wish you can create a separate website and application pool but by default the system will install mockingbird into the defaultwebsite and use the DefaultAppPool.&lt;br /&gt;&lt;br /&gt;(2) Run the setup of the console host application.&lt;br /&gt;&lt;br /&gt;(3) Run the setup of the service studio.&lt;br /&gt;&lt;br /&gt;(4) Extract the datafiles..(Sample path: c:\inetpub\wwwroot\MockingBird\datafiles). This data files folder also contains a ‘sample’ end point which is required to verify the installation (and the verification is done using the Studio app). Once you are proficient with this app and don’t need it, you can delete this sample folder if necessary.&lt;br /&gt;&lt;br /&gt;(5) From a Powershell prompt (in the MockingBird directory) run the grantPermissions.ps1 script. This will give full control access to “Everyone” on the MockingBird data files folder. If you are not comfortable with giving such sweeping permissions, then feel free to change the script or manually ensure you give access to Network service or ASPNET user on the mockingbird datafiles folder   (Even the service studio user needs permission to these folders as it writes entries to the handlerMap.config file).&lt;br /&gt;&lt;br /&gt;
&lt;h3&gt;Update the configuration files&lt;/h3&gt;All the config files have been setup automatically to hold the default production settings, so if you use the defaults (install the web app into a virtual dir in the default website, use c:\inetpub\wwwroot\mockingbird as local path etc), then you wont need to change anything. However, if you have chosen other paths, then you need to edit the config files. &lt;br /&gt;&lt;br /&gt;Update your configuration files (found in the datafiles\configuration folder) as described in the installation guide. &lt;br /&gt;The files you need to modify are
&lt;ul&gt;&lt;li&gt;&lt;b&gt;web.config&lt;/b&gt; and &lt;b&gt;app.config&lt;/b&gt; : change this to add/modify endpoints for the WCF service.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;MockingBird.config&lt;/b&gt; : contains all system level information including file paths etc&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Logging Config&lt;/b&gt; : This may be either the &lt;b&gt;Log4net.config&lt;/b&gt; or &lt;b&gt;EntLibLogging.config&lt;/b&gt; depending on which logger you prefer.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Studio.config&lt;/b&gt;: The app config for the studio module pointing to test data locations etc. &lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;If you are extending the system, then you would need to update the &lt;b&gt;unity.config&lt;/b&gt; file as that lists all interfaces and maps them to the chosen implementations.&lt;br /&gt;
&lt;h4&gt;Changing the logger&lt;/h4&gt;The default logger is set to Log4Net. To change this, open the unity.config file, and look for the following line&lt;br /&gt;         &lt;b&gt;&amp;lt;type type=&amp;quot;ILogger&amp;quot; mapTo=&amp;quot;Log4NetLogger&amp;quot;&amp;gt;&lt;/b&gt;&lt;br /&gt;(This appears in 2 places: at the root level and at the named container level). Replace this with&lt;br /&gt;        &lt;b&gt;&amp;lt;type type=&amp;quot;ILogger&amp;quot; mapTo=&amp;quot;EntLibLogger&amp;quot;&amp;gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;If no logs are written at runtime, this maybe due to the log file being set to read-only. Note that the system always writes log messages to System Trace so by using a tool such as &lt;b&gt;DebugView&lt;/b&gt; it will be possible to monitor what&amp;#39;s going on. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Thu, 12 Aug 2010 13:08:24 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Quick Setup Guide 20100812010824P</guid></item><item><title>Updated Wiki: Home</title><link>http://mockingbird.codeplex.com/wikipage?version=62</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;What is MockingBird?&lt;/h2&gt;MockingBird is a tool-set for mocking web services. The core engine is essentially a configurable message interceptor (backed by a generic simulation engine) that can act as a stand in for any web service. &lt;br /&gt;&lt;br /&gt;The 3 primary usage scenarios for MockingBird are
&lt;ul&gt;&lt;li&gt;Contract First development&lt;/li&gt;
&lt;li&gt;Isolation of build &amp;amp; dev servers from external dependencies.&lt;/li&gt;
&lt;li&gt;As an &lt;b&gt;integration test facilitator&lt;/b&gt; &lt;/li&gt;&lt;/ul&gt;

&lt;h2&gt;Current Release - V2 RTM&lt;/h2&gt;&lt;b&gt;V2.0 RTMC&lt;/b&gt; is now available. The new features of this release (post RC) are the addition of a Service Configurator module which allows you to pick a WSDL (on file or from a running service) and automatically generate a default mock service. &lt;br /&gt;
&lt;h4&gt;Deployment&lt;/h4&gt;There are now 3 installers. 1 is for the Web App, 1 for the Console Host and 1 for the Studio. Refer to the documentation for the short walkthrough on how to install and use MockingBird.&lt;br /&gt;
&lt;h3&gt;Why should I care? - The Elevator Pitch for MockingBird&lt;/h3&gt;Consider the scenario where you are given the WSDL for a third-party web-service but no functioning system is available yet (it may be a brand new service or perhaps dev/site licenses are being negotiated). So if you need to get on with development immediately, what do you code against? If you are into TDD &amp;amp; MockObjects you may look to mock up an interface corresponding to the WSDL and develop against that.  But you may not be using a TDD and mock-objects oriented approach. Even if you do resort to mock objects, that will sort your unit tests out but for the integration testing it may not be possible to target the actual web service (for various reasons) Or it may be that you are maintaining/enhancing an existing system that wasn’t coded against interfaces so mocking may not be possible. Or what if you are a BizTalk developer? You cannot mock/inject dependencies into your orchestrations and other components (well, except for pipeline components, but thats another story)!! &lt;br /&gt;&lt;br /&gt;In another scenario, you may be integrating with a third party webservice (that maybe fronting a LOB application) and setting up a build server and multiple environments (DEV, TEST, UAT etc). But now the vendor says you can only have one license for their web service. Now how do you run DEV, TEST, UAT in parallel with different data sets? Sometimes you may have more than one license, but the service instances may be shared amongst different departments and like many LOB applications that instance may be subject to operational and maintenance schedules that clash with our build cycles? Your build server (and test process)  is then completely exposed to something you don’t control. &lt;br /&gt;&lt;br /&gt;Being able to set up complete mock services is invaluable in these scenarios. Unfortunately there aren&amp;#39;t many tools available to help with this so we have to resort to manually coding mock services. MockingBird aims to make it easy and quick to build configurable mock services.  Now there is no need to mess with WSDL.exe and svcutil to generate server side stubs and manually add logic. Simply drop in an XML file representing your service behavior, put in a couple of configuration entries and you&amp;#39;re ready to go with a new service endpoint. &lt;br /&gt;&lt;br /&gt;Of course you do eventually need to perform functional and integration tests against the actual external system because it is not possible to simulate all the exceptions and data conditions of a line-of-business application in a mock service. Mockingbird just helps you get a working interface with a comprehensive base of response messages that will help in getting development off the ground.&lt;br /&gt;&lt;br /&gt;Please read through the documentation to understand how the MockingBird toolset works in greater detail.&lt;br /&gt;
&lt;h3&gt;What does it look like and what&amp;#39;s inside the box ?&lt;/h3&gt;At a very high level the system looks like the illustration below&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=mockingbird&amp;DownloadId=111482" alt="v2_Arch_And_Design_Small.png" title="v2_Arch_And_Design_Small.png" /&gt;&lt;br /&gt;&lt;br /&gt;The only requirement for the system to work right &lt;b&gt;out of the box&lt;/b&gt; is a “model” file representing the endpoint. The model is currently in XML but there is potential for other representations in future such as XAML.&lt;br /&gt;&lt;br /&gt;There are 3 main components of MockingBird at this time (and many more to come)
&lt;ul&gt;&lt;li&gt;A &lt;b&gt;Service Simulator&lt;/b&gt; app which is comprised of - An ASP.NET HttpHandler, A WCF message Interceptor, A WCF SimulatorHost console (for non Http protocol support) and all these are backed up by a generic &lt;b&gt;Simulation Framework&lt;/b&gt; which is configured to return pre-defined responses using a &lt;b&gt;model&lt;/b&gt; file for each endpoint that is being simulated.&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;Service Studio&lt;/b&gt; application that has 3 main modules 
&lt;ul&gt;&lt;li&gt;A module to pick a WSDL and automatically generate a complete default mock service.&lt;/li&gt;
&lt;li&gt;A module to parse a given WSDL and generate sample requests and responses and help in setting up a mock service quickly. &lt;/li&gt;
&lt;li&gt;A module to invoke the test services or remote services and check the responses.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;XML Instance Generation&lt;/b&gt; library that is used in the &lt;b&gt;Service Studio&lt;/b&gt; but can also be used independently.&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Please refer to the comprehensive documentation (included with the download package) to understand how to install it, how it works and how to extend it.&lt;br /&gt;
&lt;h3&gt;Workspace Contents&lt;/h3&gt;
&lt;ol&gt;&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Quick%20Setup%20Guide&amp;referringTitle=Home"&gt;Quick Setup Guide&lt;/a&gt; - the 10 min overview to setting it up&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Detailed%20Scenarios&amp;referringTitle=Home"&gt;Detailed Scenarios&lt;/a&gt; - description of the Contract First approaches and the Environment Isolation&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mockingbird.codeplex.com/wikipage?title=Alternative%20approaches&amp;referringTitle=Home"&gt;Alternative approaches&lt;/a&gt; - what other approaches can be used for mocking services?&lt;/li&gt;&lt;/ol&gt;

&lt;h3&gt;Acknowledgements, the team and the roadmap&lt;/h3&gt;&lt;h4&gt;The Original Idea&lt;/h4&gt;MockingBird started life as &lt;b&gt;MockWeb&lt;/b&gt; an internal HTTP based tool  that my former colleagues &lt;b&gt;Senthil Sai&lt;/b&gt; , &lt;b&gt;Will Struthers&lt;/b&gt; and I developed over 3 years ago. Credit must go to them the inspiration behind this tool. MockingBird now has a growing core team (Bram Veldhoen, Cormac O Brien, Shen Chauhan) and a number of &amp;#39;advisors.&lt;br /&gt;
&lt;h4&gt;Contributors &amp;amp; Supporters&lt;/h4&gt;I would also like to thank Nick Heppleston for his early adoption and feedback which helped build more quality into the tool. I would also like to thank Yossi Dahan and Michael Stephenson for their support.  A big thanks to the community for adopting MockingBird. Its an awesome experience to keep bumping into folks at user groups who are regular users of MockingBird and hear of their scenarios!!&lt;br /&gt;
&lt;h4&gt;Roadmap&lt;/h4&gt;We are constantly looking for ways to extend the reach and utility of this tool. (Check out the &lt;b&gt;roadmap&lt;/b&gt; blog post linked above for more details on the plans)&lt;br /&gt;&lt;br /&gt;The primary areas that we are targeting for the future are&lt;br /&gt;(1) Structural changes to enable extensibility and customization&lt;br /&gt;(2) Extending this to provide mock BizTalk adapters via the WCF LOB Adapter SDK&lt;br /&gt;(3) A better UI (preferably WPF) to help setup, configure and manage the mock services.&lt;br /&gt;&lt;br /&gt;Of course, it all depends on time available outside regular work for all the current team.  If you would like to join and /or contribute code to extend MockingBird (especially in the primary areas i&amp;#39;ve listed) please do let me know.&lt;br /&gt;&lt;br /&gt;Do send us feedback via the discussion forums here on your installation /setup experiences, thoughts on making it more extensible and so on, and most importantly of course, do let us know if its working for you or not. All feedback is appreciated.&lt;br /&gt;
&lt;h3&gt;Blog Articles&lt;/h3&gt;My blog articles charting the progress of the development of this tool
&lt;ol&gt;&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/14/introducing-mockingbird/" class="externalLink"&gt;Introducing MockingBird (announcing this tool)&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/01/22/waltzing-with-wsdl/" class="externalLink"&gt;Waltzing with WSDL (progress on the Studio GUI&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/07/mockingbird-beta/" class="externalLink"&gt;MockingBird Beta&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/05/22/mockingbird-beta-2/" class="externalLink"&gt;MockingBird Beta-2&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2009/11/21/mockingbird-v1-rtm/" class="externalLink"&gt;MockingBird v1 RTM&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/01/18/mockingbird-the-roadmap/" class="externalLink"&gt;MockingBird - The Roadmap&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://santoshbenjamin.wordpress.com/2010/03/17/mockingbird-meets-wcf-in-v2-0-rc/" class="externalLink"&gt;MockingBird - v2.0 RC&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;

&lt;h3&gt;Platform and Pre-requisites&lt;/h3&gt;This is written against .NET 3.5 and uses some C# 3.0 features as well as the &lt;a href="http://code.google.com/p/moq/" class="externalLink"&gt;MoQ&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; mock-object framework. The IoC mechanism is &lt;a href="http://www.codeplex.com/unity" class="externalLink"&gt;Unity&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; .  The test framework is &lt;a href="http://www.mbunit.com/" class="externalLink"&gt;MbUnit3.5&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. MbUnit 3.5 uses the &lt;a href="http://www.gallio.org/" class="externalLink"&gt;Gallio Test Automation Platform&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and these binaries are only required if you run the unit and functional tests (and the packages include the binaries used for development).  &lt;br /&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>santoshbenjamin</author><pubDate>Thu, 12 Aug 2010 13:00:47 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20100812010047P</guid></item></channel></rss>