dev server, xvnc server creates THS object passes browser, app_base, selenium_rc hash (start => 1) calls test_directory($dir) starts xvnc server starts selenium rc daemon connects to selenium rc daemon looks for HTML files processes them into arrays for ::Selenese feeds to ::Selenese TAP is output calls test_directory($other_dir) reuses servers if possible reuses selenium rc connection if possible looks for HTML files processes them into arrays for ::Selenese feeds to ::Selenese TAP is output calls done_testing(), test exits DESTROY shuts down servers started dev server, xvnc server creates THS object passes browser, app_base, selenium_rc hash (start => 0) calls test_directory($dir) connects to selenium rc daemon looks for HTML files processes them into arrays for ::Selenese feeds to ::Selenese TAP is output calls test_directory($other_dir) looks for HTML files processes them into arrays for ::Selenese feeds to ::Selenese TAP is output calls done_testing(), test exits THS::DESTROY is essentially a NOP