One way of doing this seems to use MethodContext>>runSimulated:contextAtEachStep:. I've found this looking at MessageTally. Is it the best solution ? So in Autotest>>findRunAndShowTestsOf: I try something like this Autotest>>findRunAndShowTestsOf:changedMethod   | testMethods aTestResult methodHit |   "Finds the test related to changedMethod, run them and tell the view to update" testMethods := search methodsFor: changedMethod. methodHit := false. thisContext sender runSimulated: [aTestResult := runner run: testMethods] contextAtEachStep: [:current| (current method = changedMethod)   "<--- here I detect if changedMethod has been hit"     ifTrue: [methodHit := true]].      ..... but using this debugger opens with "SimulationGuardException: triggered by BlockClosure>>newProcess" in MethodContext>>doPrimitive:method:receiver:args: As I don't (yet :) understand all this stuff, I want to know if it's the right way to do it and what should I check.
This is the stepping mechanism of the debugger. It is dead slow, and likely to break when you fork processes, mess with the stack, or hit other kinds of primitives. I would use method wrappers, they are much easier to use, less error prone, very efficient, and already integrated with the test runner (see the in the GUI code: 'test coverage'). Lukas -- Lukas Renggli www.lukas-renggli.ch