Another thing I have always done, even when I have lots of unit tests, is to often have a console app in most of my API projects. Be this WebApi or older ones using MVC or WCF. These exist to test the client libraries for the API's that I have written which integration easier. These console apps mainly have a few methods that allow me to easily and quickly try out my service api's. Be this querying, uploading / downloading files etc.
These console apps aren't instead of unit tests or integration tests but allow me a quick convenient way to test development / stage / live api end points without firing up VS or having to worry about what credentials I need etc.
Today I almost fell into "lets add a console app into a new project" but I had a brainwave. Why not use LinqPad to write these "apps" and then store them in my solution with source control etc? Thus avoiding unnecessary additional projects, compile times etc. LinqPad allows you to save queries as .linq files and if I create several can be opened by anyone with LinqPad and be ran within seconds. No open project, compile, run etc.
The process is dead simple. First I opened LinqPad and created a new query. I then switched the language from C# Expression to either C# Statements or C# Program. I generally find C# Statements is enough but if I'm trying a few thing out programs are sometimes easier to manage.
|1 -Change Language Type|
|2 - Finding Query Properties|
Once this is loaded you can easily add references by either finding the assemblies on disk or even via nuget directly which is very cool. Once the assemblies are referenced click the additional namespace tab and pull in the namespaces you'll want to use in your script. You can do this later but it often saves time to do this once the window is open.
|3 - Choose References, even with Nuget|
|4 - Write the test script and run|
Finally just save the query into your solution and you can open it when ever you need too.
And that's it, So far I find this quick and easy and it will be great to come back at a later date and know replaying things against stage / live will be one click away.
As a bonus point, whilst writing this post I thought what about using HttpClient to try out new third party client rest api's or client libraries. Simply really quick iterations before writing a concrete implementation with the full test suite etc. Something I will explore properly at a later date.
For today this works fantastic for me but I have thought it might be worth looking into ScriptCS as an alternative however I'm not sure if I prefer having the LinqPad IDE with autocompletion etc. I'll to need to investigate but that is for another day.
Hope this helps.