Skip navigation.

Archives

Musings On Testing Multithreaded Logic

I'm currently pondering the problem of multi-threaded logic and concurrent testing.

Threads are radioactive, man! You should try to stay well clear, and if you can't avoid them, handle with extreme caution.

You see, if I write a line of code, then there are only certain ways it can be wrong. If I write two lines of code, that doubles the ways it the code can be wrong. If I write three lines, then that pretty much doubles it again.

Concutest - Framework for Testing Multithreaded Java

Yet again, I'm behind the curve.

In my previous post, I theorised about a testing tool that would enable deterministic interleaving of multiple concurrent threads so that we could test explicit concurrency scenarios in a way that's predictable and repeatable.

Guess what? Yep, someone's already gone and done it.

Marathon 2.0b3 has been released

Marathon is a testing framework for GUI applications developed using Java/Swing. This is the third public release of Marathon 2.0 beta after the support for Ruby and Python 2.5 are added.

Google Maps API open source their Selenium test suite

Google has decided to open source their Selenium test suite so that developers can see the kind of integration tests they're currently running, and can even contribute their own tests that test specific functionality or an order of operations used on their site. This should enable web site developers to make sure their site works with the Google Maps API.

Dependency Injection Myth: Reference Passing

by Miško Hevery

After reading the article on Singletons (the design anti-pattern) and how they are really global variables and dependency injection suggestion to simply pass in the reference to the singleton in a constructor (instead of looking them up in global state), many people incorrectly concluded that now they will have to pass the singleton all over the place. Let me demonstrate the myth with the following example.