             ignoredMethods     = new ArrayIterator();
         }
 
-        private function setUpIterators(test:Object):void {
+        protected function setUpIterators(test:Object):void {
             afterClassMethods   = new ArrayIterator(getAfterClassMethods(test));
             afterMethods        = new ArrayIterator(getAfterMethods(test));
             beforeClassMethods  = new ArrayIterator(getBeforeClassMethods(test));

            return _readyToTearDown;
        }

        private function setUpNullIterators():void {
            // Set up null iterators for access to length
            // and other properties...
            testMethods        = new ArrayIterator();

         * @param   test    An instance of a class with methods that have [Before] metadata.
         * @return  An array of Method instances.
         */
        protected function getAfterClassMethods(test:Object):Array {
            return getMethodsWithMetadata(test["constructor"], "AfterClass", true);
        }
        
        protected function countTestMethods(test:Object):uint {
            return getTestMethods(test).length;
        }
        
