FolderRunner: * Handles test suites, organised in directories (folders) * Handles both HTML and XLS spreadsheet files * Now works with the version of Java Fit included with ''!-FitLibrary-!''. * Uses CSS for reports, and automatically includes the appropriate links in the html header for those Run FolderRunner as follows (replace the ";" by ":" if you're on Linux): {{{ java -cp fitlibrary.jar;log4j-1.2.16.jar fitlibrary.runner.FolderRunner testDiry reportDiry }}} * You will need to add to the classpath (''cp'') for any application code that you're testing. * The log4j jar file is provided in the release in fitlibrary/fitnesse/lib If you want feedback on progress of FolderRunner, instead run ''!-FolderRunnerUI-!'' as follows: {{{ java -cp fitlibrary.jar;log4j-1.2.16.jar fitlibrary.runner.FolderRunnerUI testDiry reportDiry }}} * This shows the current counts of passed tests, etc as it runs the tests * It also shows any program output (to ''out'' or ''err'') * It allows you to quit partway through # !3 FolderRunner # * FolderRunner runs ''!-FitLibrary-!'' on every file in the ''testDiry'' and sub-directories and writes a report file into the corresponding place in the ''reportDiry'' (creating any sub-directories, as needed). * However, it ignores files that start with "." or "CVS" and any ''files'' directories * It also ignores files that contain the following text: {{{[Not a TEST]}}} * You can have relative references to images, etc, in your test files in a local ''files'' directory. Before running Fit on the files in a directory, FolderRunner copies any ''files'' directory in that directory into the corresponding place in the ''reportDiry'', so that they're available for access from the reports. * It creates a file ''reportIndex.html'' in the ''reportDiry'' that gives the results of all the tests. It provides links into all of the reports, as well as to the directories holding the reports in a (sub-)suite. * FolderRunner handles both HTML and XLS spreadsheet files. * FolderRunner inserts CCS links, etc in the generated reports so that the colors show (and writes a suitable CSS file so it can be accessed). * If you wish to change the CSS file used (eg, to alter the colors of the reports), run FolderRunner once and it will add several files into ''testDiry/files''. Edit the CSS file (''testDiry/files/css/fitnesse.css'') to suit. FolderRunner won't replace them. !3 Suite Fixture ${suite} allows the same storytests to be run with different fixtures, etc. For example to run the same storytests (as supplied in the release) in two different ways, run: {{{ java -cp fitlibraryRunner.jar fitlibrary.runner.FolderRunner -s suiteTests/SuiteFixtureExample.html suiteTests/tests suiteTests/reports }}} and {{{ java -cp fitlibraryRunner.jar fitlibrary.runner.FolderRunner -s suiteTests/AnotherSuiteFixtureExample.html suiteTests/tests suiteTests/otherReports }}}# !3 Spreadsheet files # * FolderRunner uses ''!-SpreadsheetRunner-!'' which in turn uses ''Poi'' to read XLS files. * ''!-SpreadsheetRunner-!'' uses spreadsheet borders to work out where the tables are in the spreadsheet (just the first sheet). * See the directory ''folderRunner/tests/trySetUpTearDown/nested'' in the distribution of ''!-FitLibrary-!'' for an example of the use of a spreadsheet file. * Add the poi jar in the classpath when using such files. (This jar is provided in the release folder ''fitlibrary/fitnesse/lib''. Or download poi from http://jakarta.apache.org/poi) # !3 ''!-SetUp-!'' and ''!-TearDown-!'' # The following special files may be in the ''testDiry'' or any of its sub-directories, and are used as follows: * A ''!-SetUp-!'' file is effectively added to the start of each test in the directory (including sub-directories). The file may be ''!-SetUp.htm-!'', ''!-SetUp.html-!'' or ''!-SetUp.xls-!'' (in any mixture of uppercase and lower case). * A ''!-TearDown-!'' file is effectively added to the endof each test in the directory (including sub-directories). The file may be ''!-TearDown.htm-!'', ''!-TearDown.html-!'' or ''!-TearDown.xls-!'' (in any mixture of uppercase and lower case). Before running a test, all ''!-SetUp-!'' files that appear in the current directory and all those above it (up to the level of the ''testDiry'') are (effectively) added to the start of the test. They are added with the top-most first. All ''!-TearDown-!'' files that appear in the current directory and all those above it (up to the level of the ''testDiry'') are (effectively) added to the end of the test. They are added with the top-most last. NB: this differs from the ''!-FitNesse-!'' approach, which only takes the closest ''!-SetUp-!'' or ''!-TearDown-!''.