Decoding standard output and standard error when redirecting to a GUI application

The Process class allows you to redirect the three streams basic I/O streams of a process: standard input, standard output and standard error. This is particularly useful for programmatically running console applications and capturing their output. And everything will work just fine as long as only 7-bit ASCII characters are involved. However, since even today console applications…


D.C. and the Wrapper Factory

A while ago I wrote about using reflection for testing non-public members. Since then I’ve been increasingly annoyed by the repetitive nature of that approach. At some point it occurred to me that it should be possible to automate the mundane and boring task of writing the same kind of reflection code over and over…


DTACM (D.C.’s Test Automation Coding Manifesto)

I find myself getting more and more frustrated whenever I see test code that is best described as quick and dirty. Now, sometimes I do acknowledge that the world is not perfect (has never been and will never be) so I realize that the following is really my personal ideal that might not fully work in the real…


All the wonderful colors of code coverage

I’d like to share my colors with you:   R G B Coverage Not Touched Area 230 128 165 Coverage Partially Touched Area 191 210 249 Coverage Touched Area 180 228 180 These are the colors I prefer for code coverage in Visual Studio and if you’ve used the first Beta of Visual Studio 2005…


EMTF 2.0 Beta released

It’s been a couple of months since I first blogged about EMTF. Since then I’ve been busy refining and extending the framework and I’m happy to announce that the beta release of version 2.0 is finally done! Special thanks to Josh Poley since a lot of the new functionality is based on his feedback. So, allow me…


Adding and removing websites to/from security zones programmatically (C#)

When you’re searching binging for how to add or remove websites to/from IE’s security zones you’ll find tons of samples all showing how to achieve this by creating and deleting registry keys. While doing so will probably work just fine in most scenarios, there is no guarantee that it always will. As the MSDN document About…


HTTP debugging for Silverlight developers (Mac OS X edition)

Many posts have been written about how to debug problems with issuing HTTP requests from Silverlight applications, particularly in the context of web services and WCF (see for example Debugging Web Service Usage in Silverlight 2 or Faults and Exceptions when using Web Services in Silverlight 2). As they point out there are severe limitations…


Back from Portland Code Camp

The Portland Code Camp yesterday was a blast. In fact, it was one of the best (un)conferences I’ve been to so far with a wide variety of topics and I’d like to share my personal Top 3 Best of Portland Code Camp 2009 (but keep in mind that that’s 3 out of 5): Patrick Cauldwell did…


Creating an API testing framework 101

Writing a fully featured API testing solution is a lot of work. You have to deal with things like test case management, integration with code coverage tools or test execution on server farms. However, the core of a (reflection-based) API testing framework is quite simple. This post explains the basics with EMTF as an example….


Introducing EMTF

A while ago a needed to do what I like to call quick and dirty testing, i.e. getting as much test coverage as possible in a given period of time. To make things worse, I was working on a client-server feature requiring a bit of setup in order to work in the first place and wanted…