On Fri, 06 Aug 2010 12:38:39 -0400, Aryeh Gregor wrote:
On Thu, Aug 5, 2010 at 6:47 PM, Mark A. Hershberger mah@everybody.org wrote:
Can I suggest that the framework can see that an extension has tests simply by the presence of the <extensiondir>/tests directory containing a <Extension>*TestSuite.php file?
IMO, the way parser tests do it is smarter. When you install the extension, it adds the location of the test files to $wgParserTestFiles. That way, only the tests associated with installed extensions will run. If you want to force only particular tests to run all the time, you can also modify the variable in LocalSettings.php as usual.
We are doing something similar. In the extension require() file, the test suite is added to $wgAutoloadClasses. Right now the entry in $wgSeleniumTestSuites is pushed in LocalSettings. However, we could establish the convention that it is pushed in the extension require() file as well. Then all extensions with test suites would automatically load them. To tailor this, the entries in $wgSeleniumTestSuites could be removed in LocalSettings.