         }
 
         protected function runNextMethod(e:TimerEvent = null):void {
-            if(methodsToRun.readyToTearDown) {
+            if(!testMethodNameReceived && methodsToRun.readyToTearDown) {
                 removeInjectedMembers();
                 removeInjectedVisualInstances();
             }

        }
        
        public function runMethodByName(test:Class, result:IResult, methodName:String=null, visualContext:DisplayObjectContainer=null):void {
            currentTest           = new test();
            currentTestReflection = Reflection.create(test);
            currentMethod         = null;
            this.result           = result;
            this.visualContext    = visualContext;

            initializeInjectableMembers();
            

        protected var methodsToRun:TestIterator;
        protected var result:IResult;
        protected var startTime:Number;
        protected var testMethodNameReceived:Boolean;
        protected var timer:Timer;
        protected var visualContext:DisplayObjectContainer;
        protected var visualInstances:Array;
