Try this:
this.each(Config.snippets.station, function(self, snippet)
{
self.then(function()
{
this.fill('form[id="changelist-search"]', {q: snippet.name}, true);
});
self.then(function()
{
this.capture(snippet.name + '.png');
})
});
The reason why your initial code did not work is that Capser's then
declares a deferred execution step. If unwinded, your code did actually the following:
submit form 1
place capture 1 into a queue
submit form 2
place capture 2 into a queue
submit form 3
place capture 3 into a queue
// then execute the queue
capture 1
capture 2
caprure 3
The resulting code has all steps placed into the queue, so they are executed in proper order.