Search And Destroy

Look out honey, ’cause I’m using technology!

QuickNet Pre Alpha

Posted by kilfour on September 3, 2009

Well the source is on google code, so anyone who’s interested, has a subversion client, and possesses some googling skills can download the code and play around with it.

For now it’s just the core code, and a project containing some examples of usage.
I’ve produced quite a bit of experimental code regarding QuickNet, but managed to keep it external to the core logic. In the experimental phase, amongst others there’s a QuickNet.Gui (look and feel quite similar to the nunit gui runner), a QuickNet.AssemblyRunner (for easy integration with TestDriven.Net), a QuickNet.FactRunner which allows you to define transitions and properties in a more imperative way, a plugin for SharpDevelop, … .
The source on google code is stripped of all of this. It contains just enough logic to run the examples demonstrated in the previous QuickNet blogposts, with the exception of the ForEachProperty functionality described in the ‘Testing QuickDoc’ post. This has been moved out of the core. There now exists a FunctionalTestRun extension dll that provides this functionality.

As I said : PreAlpha.
Some things you should notice quite soon after getting the source :
- Some of the code is a mess.
- There’s not a lot of unit tests.

I’d say both issues are related.
I believe tests are required as soon as more than one person gets involved in a project. Helpfull before then, possibly, and even likely, but not required. When I develop something on my own, most of the time, writing tests speeds up development, so most of the time I write tests.
Not so with QuickNet. TDD’ing it just didn’t work. For one, it is pretty damn hard to test a tester, particulary so if the tester displays non-deterministic behaviour.
However moving towards an alpha release and in getting other people involved, the need for automated tests is becoming increasingly apparant. Hence I’ve commited myself to documenting every new feature, or change to existing functionality, with a test. So far this turned out to be doable (there’s only six of them right now though, … early days).

I’m hoping that now that I have a vague idea about what is going on, defining (human-readable) tests for the more complicated stuff will become a possibility.

For the ‘alpha release’, which should become reality in about two weeks from now, I’m thinking about getting the QuickNet.VisualTestRunner extension working. It contains a Visualizer which is intended to become the Facade for any QuickNet Gui test runner.
A concrete implementation should be included, and I’m probably going for the SharpDevelop plugin option.

If you try it out, please do let me now what you think about it.

One Response to “QuickNet Pre Alpha”

  1. [...] sure to read Mark’s announcement about this if you’re interested in playing with [...]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

 
Follow

Get every new post delivered to your Inbox.