Thursday 26 September 2013

Betamax - a few notes

I am looking for a simple programmable intercepting proxy that can be used
to debug/modify requests to external systems.

It also has too work on legacy systems,
i.e.: older code, JVM, and tools.

I have built a simple prototype using JETTY,
but before I go too far, I want to evaluate anything else available.

I have been attempting to integrate Betamax into our current project to test it.

Here are a few of my notes, so I can pick it up later.

Note 1:
Betamax 1.1.2 is compiled using Java 1.7

How did I discover this the hard way:
if you get an error about TapeLoadException,
and nothing seems to make sense...
then put this line into your test....

throw new TapeLoadException("xxxx")

when it tries to run the code,
you get a standard version 51 error.
ie: it needs Java 1.7.


Note 2:
Ok, so I thought I would test it in Java 1.7,
even though I could never use it in the project...
Now I discover it seems to need Groovy 2
And we use Grails 2.1.0, which has Groovy 1.8

That's about enough for me.

Betamax looks like a useful tool, but without support for older tool chains,
it is going to be difficult getting it into a corporate project.


I have found a few 'similar' projects, as I find more, I will add them here.

wiremock
rest-driver

Most of these seem to be Record/Edit/Playback tools like VCR for Ruby.
To speed up functional tests, or make them work offline.
But even this limited functionality is a good thing.

No comments:

Post a Comment