| <HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Running Tests</TITLE></HEAD><BODY alink="#ff0000" bgcolor="#ffffff" leftmargin="4" link="#0000ff" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0000aa"><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG alt="logo" border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" colspan="4" height="5" valign="top" width="456"><IMG alt="line" border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="456"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG alt="right" border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="4" height="35" valign="top" width="456"><IMG alt="" border="0" height="35" hspace="0" src="graphics/run-header.jpg" vspace="0" width="456"></TD></TR><TR><TD align="left" height="20" valign="top" width="168"><IMG alt="bottom" border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="168"></TD><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" valign="top" width="120"><IMG alt="join" border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR> |
| |
| |
| |
| <A href="overview.html" onMouseOut="rolloverOff('side-overview');" onMouseOver="rolloverOn('side-overview');"><IMG alt="Overview" border="0" height="12" hspace="0" name="side-overview" onLoad="rolloverLoad('side-overview','graphics/overview-label-2.jpg','graphics/overview-label-3.jpg');" src="graphics/overview-label-3.jpg" vspace="0" width="120"></A><BR> |
| |
| <A href="getstarted.html" onMouseOut="rolloverOff('side-getstarted');" onMouseOver="rolloverOn('side-getstarted');"><IMG alt="Getting Started" border="0" height="12" hspace="0" name="side-getstarted" onLoad="rolloverLoad('side-getstarted','graphics/getstarted-label-2.jpg','graphics/getstarted-label-3.jpg');" src="graphics/getstarted-label-3.jpg" vspace="0" width="120"></A><BR> |
| |
| <IMG alt="separator" border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR> |
| |
| <A href="apidocs/index.html" onMouseOut="rolloverOff('side-ext-10');" onMouseOver="rolloverOn('side-ext-10');"><IMG alt="Java API" border="0" height="12" hspace="0" name="side-ext-10" onLoad="rolloverLoad('side-ext-10','graphics/ext-10-label-2.jpg','graphics/ext-10-label-3.jpg');" src="graphics/ext-10-label-3.jpg" vspace="0" width="120"></A><BR> |
| |
| <IMG alt="separator" border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR> |
| |
| <A href="faq.html" onMouseOut="rolloverOff('side-faq');" onMouseOver="rolloverOn('side-faq');"><IMG alt="FAQ" border="0" height="12" hspace="0" name="side-faq" onLoad="rolloverLoad('side-faq','graphics/faq-label-2.jpg','graphics/faq-label-3.jpg');" src="graphics/faq-label-3.jpg" vspace="0" width="120"></A><BR> |
| |
| <IMG alt="Running Tests" border="0" height="12" hspace="0" src="graphics/run-label-1.jpg" vspace="0" width="120"><BR> |
| |
| <A href="submit.html" onMouseOut="rolloverOff('side-submit');" onMouseOver="rolloverOn('side-submit');"><IMG alt="Writing New Tests" border="0" height="12" hspace="0" name="side-submit" onLoad="rolloverLoad('side-submit','graphics/submit-label-2.jpg','graphics/submit-label-3.jpg');" src="graphics/submit-label-3.jpg" vspace="0" width="120"></A><BR> |
| |
| <A href="design.html" onMouseOut="rolloverOff('side-design');" onMouseOver="rolloverOn('side-design');"><IMG alt="Test Standards" border="0" height="12" hspace="0" name="side-design" onLoad="rolloverLoad('side-design','graphics/design-label-2.jpg','graphics/design-label-3.jpg');" src="graphics/design-label-3.jpg" vspace="0" width="120"></A><BR> |
| |
| <A href="xalanc.html" onMouseOut="rolloverOff('side-xalanc');" onMouseOver="rolloverOn('side-xalanc');"><IMG alt="Xalan-C Tests" border="0" height="12" hspace="0" name="side-xalanc" onLoad="rolloverLoad('side-xalanc','graphics/xalanc-label-2.jpg','graphics/xalanc-label-3.jpg');" src="graphics/xalanc-label-3.jpg" vspace="0" width="120"></A><BR> |
| <IMG alt="separator" border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR> |
| |
| <A href="http://xml.apache.org/xalan-j" onMouseOut="rolloverOff('side-ext-28');" onMouseOver="rolloverOn('side-ext-28');"><IMG alt="Xalan-J 2.x" border="0" height="12" hspace="0" name="side-ext-28" onLoad="rolloverLoad('side-ext-28','graphics/ext-28-label-2.jpg','graphics/ext-28-label-3.jpg');" src="graphics/ext-28-label-3.jpg" vspace="0" width="120"></A><BR> |
| <A href="http://xml.apache.org/xalan" onMouseOut="rolloverOff('side-ext-30');" onMouseOver="rolloverOn('side-ext-30');"><IMG alt="Xalan-J 1.x" border="0" height="12" hspace="0" name="side-ext-30" onLoad="rolloverLoad('side-ext-30','graphics/ext-30-label-2.jpg','graphics/ext-30-label-3.jpg');" src="graphics/ext-30-label-3.jpg" vspace="0" width="120"></A><BR> |
| <A href="http://xml.apache.org/xalan-c" onMouseOut="rolloverOff('side-ext-32');" onMouseOver="rolloverOn('side-ext-32');"><IMG alt="Xalan-C 1.x" border="0" height="12" hspace="0" name="side-ext-32" onLoad="rolloverLoad('side-ext-32','graphics/ext-32-label-2.jpg','graphics/ext-32-label-3.jpg');" src="graphics/ext-32-label-3.jpg" vspace="0" width="120"></A><BR> |
| |
| <IMG alt="close" border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="500"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD> |
| <UL> |
| <LI><A href="#how-to-run">How-to: Run Xalan-J tests</A></LI> |
| <LI><A href="#how-to-view-results">How-to: View Test Results</A></LI> |
| <LI><A href="#test-options">Common Test Options</A></LI> |
| <LI><A href="#how-to-run-c">How-to: Run Xalan-C tests</A></LI> |
| </UL> |
| |
| <A name="how-to-run"><!--anchor--></A> |
| <TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG alt="" border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>How-to: Run tests</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"> </TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"> |
| <P>Nearly all tests for Xalan are independent Java classes built |
| into testxsl.jar that |
| can be run either individually on the command line, programmatically |
| from your application or our handy Ant build.xml file, or in batches from |
| <A href="apidocs/org/apache/qetest/xsl/XSLTestHarness.html">XSLTestHarness</A>. |
| There really isn't any magic to them: you can just set your classpath and |
| execute java.exe to run them; some Tests and Testlets currently provide defaults |
| for their inputs, so you can run them without any setup at all. |
| However we have provided a couple of more |
| convenient ways to run the most common tests:</P> |
| <TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="20"><IMG alt="Note" border="0" height="24" hspace="0" src="resources/note.gif" vspace="0" width="20"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>If you need to debug into the tests themselves, |
| you may want to use the <A href="faq.html#debug">debug*.bat files</A></I></FONT></TD></TR></TABLE> |
| <P>Of course, first <A href="getstarted.html#how-to-build">Build a fresh copy of testxsl.jar.</A> |
| </P> |
| <P>cd xml-xalan\test<BR></P> |
| <P>You can either: use the Ant build.xml script; run a convenience batch file; or execute java.exe yourself.</P> |
| |
| <P> |
| <CODE><FONT face="courier, monospaced">build conf [<A href="#test-options">Ant-prefixed options</A>]</FONT></CODE> |
| <BR>(runs StylesheetTestletDriver over tests\conf test tree using the default StylesheetTestlet)<BR><BR> |
| <CODE><FONT face="courier, monospaced">build perf [<A href="#test-options">Ant-prefixed options</A>]</FONT></CODE> |
| <BR>(runs StylesheetTestletDriver over tests\perf test tree using the default PerformanceTestlet)<BR><BR> |
| <CODE><FONT face="courier, monospaced">build api -DtestClass=TRAXAPITestClassName [<A href="#test-options">Ant-prefixed options</A>]</FONT></CODE> |
| <BR>(runs TRAX interface tests with Xalan-J 2.x<BR> |
| </P> |
| <P>Alternately: some convenience batch files are provided for the most common |
| tests - these simply turn around and call build.bat/.sh for you.<BR> |
| (Namely conf.bat, perf.bat, and the like)</P> |
| <P>Alternately: Run java.exe and the desired test class yourself:<BR></P> |
| <TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="20"><IMG alt="Note" border="0" height="24" hspace="0" src="resources/note.gif" vspace="0" width="20"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>Running tests with alternate JAXP parsers: all org.apache.qetest.trax.* |
| tests can be run with Xalan-J 2.x and any JAXP 1.1 compatible parser, like |
| crimson.jar. Be sure to manually set the appropriate system properties to use |
| your parser instead of xerces.jar, which is the default for Xalan-J. Tests will |
| also run on any JAXP 1.1 compatible xslt processor, namely either our default |
| xalan one or our new xsltc one.</I></FONT></TD></TR></TABLE> |
| </FONT></TD></TR></TABLE><BR> |
| |
| <A name="how-to-view-results"><!--anchor--></A> |
| <TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG alt="" border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>How-to: View Test Results</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"> </TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"> |
| <P>Most tests both send basic results to System.out, as well as |
| writing a full set of output results to their <CODE><FONT face="courier, monospaced"><A href="#test-options-logfile">logFile</A></FONT></CODE>, as |
| set from a .properties file or the command line. Generally the |
| output results file is easier to deal with. The basic format is |
| fairly simple and you can certainly read it as-is. Also, many tests |
| send only summary results to the console, but full output to the results file.</P> |
| <P>To 'pretty-print' results or produce reports, please use the |
| viewResults.xsl stylesheet and associated batch/shell files, like so:<BR> |
| <CODE><FONT face="courier, monospaced">cd \xml-xalan\test</FONT></CODE><BR><BR> |
| <CODE><FONT face="courier, monospaced">build conf -DoptionName=optionValue <A href="#test-options-logfile">-Dqetest.logFile results/MyResults.xml</A></FONT></CODE><BR><BR> |
| <CODE><FONT face="courier, monospaced">viewResults.bat results/MyResults.xml results/MyPrettyResults.html [options]</FONT></CODE><BR><BR> |
| These options are passed to Xalan's command line to transform the |
| xml formatted output results into a nicer-looking html file. The most |
| common option would be <CODE><FONT face="courier, monospaced">-param loggingLevel 99</FONT></CODE> to get |
| more output shown in the results (higher numbers up to 99 show more details, |
| lower numbers, down to 0, show fewer details). |
| </P> |
| <P>Alternatively, the tableResults.xsl stylesheet can be used to pretty-print |
| results from the conformance test for multiple TRAX flavours:<BR><BR> |
| <CODE><FONT face="courier, monospaced">cd \xml-xalan\test</FONT></CODE><BR><BR> |
| <CODE><FONT face="courier, monospaced">build alltest.conf</FONT></CODE><BR><BR> |
| <CODE><FONT face="courier, monospaced">set RESULTSCANNER=tableResults.xsl</FONT></CODE><BR><BR> |
| <CODE><FONT face="courier, monospaced">viewResults.bat results-alltest/conf/sax/results.xml results.html [options]</FONT></CODE><BR><BR> |
| This will generate a pretty-printed HTML table in results.html, listing all |
| flavours as well as the results of individual test cases for each category. |
| The options can be passed to tableResults.xsl to generate conformance reports |
| on previously run tests, or to compare two runs of the conformance test suite. |
| </P> |
| <P>Possible options that can be passed to tableResults.xsl: |
| <UL> |
| <LI> |
| <CODE><FONT face="courier, monospaced">-param resultsDir /path/to/result/results-alltest/conf</FONT></CODE><BR><BR> |
| Passing the path to the <CODE><FONT face="courier, monospaced">results-alltest/conf</FONT></CODE> directory generates |
| a report based on the results in that directory. Defaults to <CODE><FONT face="courier, monospaced">./results-alltest/conf</FONT></CODE><BR><BR> |
| </LI> |
| <LI> |
| <CODE><FONT face="courier, monospaced">-param compareAgainst /path/to/other/results-alltest/conf</FONT></CODE><BR><BR> |
| Passing the path to anothe <CODE><FONT face="courier, monospaced">results-alltest/conf</FONT></CODE> directory compares |
| that result against the result pointed to by resultsDir.<BR><BR> |
| </LI> |
| <LI> |
| <CODE><FONT face="courier, monospaced">-param resultsDir results-alltest.xsltc/conf</FONT></CODE><BR><BR> |
| Generates a report on the results of an xsltc test (with the <CODE><FONT face="courier, monospaced">alltest.conf.xsltc</FONT></CODE>) target. |
| </LI> |
| </UL> |
| </P> |
| <P>Future work includes greatly updated results analysis stylesheets. |
| See FailScanner.xsl and PerfScanner.xsl for ideas. An important design |
| principle in the tests is that at runtime the tests merely output |
| whatever data they can as results are generated; afterwards, we then |
| post-process the results into whatever presentation format is needed, |
| including perhaps re-calculating overall results (example: if we have |
| a list of known fails correlated to JIRA numbers, then a stylesheet |
| could filter out these fails and report them as known bugs instead. |
| </P> |
| </FONT></TD></TR></TABLE><BR> |
| <A name="test-options"><!--anchor--></A> |
| <TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG alt="" border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Common Test Options</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"> </TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"> |
| <TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="20"><IMG alt="Note" border="0" height="24" hspace="0" src="resources/note.gif" vspace="0" width="20"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>Section needs updating to reflect the fact that while the options the |
| tests see remain as below, the user must now prefix all optionNames with |
| 'qetest.' or 'conf.', etc. when passing the options on the command line or |
| via my.test.properties or test.properties -sc</I></FONT></TD></TR></TABLE> |
| <P>Most tests can either accept options from a properties file, via:<BR> |
| <CODE><FONT face="courier, monospaced"> TestName -load file.properties</FONT></CODE><BR><BR> |
| or simply from the command line (which overrides the properties file) like:<BR> |
| <CODE><FONT face="courier, monospaced"> TestName -arg1 value1 -arg2 -arg3 value3</FONT></CODE><BR><BR></P> |
| <P>To see all options, call a test with an illegal argument to force it |
| to print out it's .usage(). You may mix setting options from a properties |
| file and from the command line; command line options will take precedence.</P> |
| <P>For another description of options, see <BR><CODE><FONT face="courier, monospaced">xml-xalan\test\test.properties</FONT></CODE>,<BR> |
| which describes most of them with comments. Remember that the prefixes |
| 'qetest.', 'conf.' etc. are used by the Ant build.xml file to manage which |
| properties are used for different kinds of tests, and are ripped off before |
| being passed to the Java test script itself. Thus qetest.loggingLevel=99 in |
| the test.properties file becomes just loggingLevel of 99 when passed to the test.</P> |
| <TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="20"><IMG alt="Note" border="0" height="24" hspace="0" src="resources/note.gif" vspace="0" width="20"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>Path-like options set in a properties file generally should use |
| forward slashes (legal in URL's), even on Windows platforms.</I></FONT></TD></TR></TABLE> |
| <P>Quick list of options</P> |
| <A name="test-options-logfile"><!--anchor--></A> |
| <DL> |
| <DT>-logFile <I>resultsFileName.xml</I></DT> |
| <DD>sends test results to an XML-based results file</DD> |
| <DT>-loggingLevel <I>nn</I></DT> |
| <DD>determines how much information is sent to your logFile, 0=very little, 99=lots</DD> |
| <DT>-ConsoleLogger.loggingLevel <I>nn</I></DT> |
| <DD>determines how much information is sent just to the default ConsoleLogger: |
| since often you won't be watching the console as the test is running, you can set this |
| lower than your loggingLevel to speed the tests up a little</DD> |
| <DT>-inputDir <I>path/to/tests</I></DT> |
| <DD>path to a directory tree of input *.xml/*.xsl files, using your system's separator</DD> |
| <DT>-outputDir <I>path/to/output/area</I></DT> |
| <DD>where all output is sent</DD> |
| <DT>-goldDir <I>path/to/gold</I></DT> |
| <DD>path to a directory tree of reference output - this tree should be |
| a parallel structure to the inputDir tree</DD> |
| <DT>-category <I>dirName</I></DT> |
| <DD>only run this single named subdir within inputDir</DD> |
| <DT>-excludes <I>'test1.xsl;test2.xsl'</I></DT> |
| <DD>will skip running any specifically named tests; do not use any path elements here</DD> |
| <DT>-flavor <I>xalan|trax|trax.d2d</I></DT> |
| <DD>which kind/flavor of Processor to test; see |
| <A href="apidocs/org/apache/qetest/xslwrapper/ProcessorWrapper.html">ProcessorWrapper.java</A> </DD> |
| <DT>-testlet <I>TestletClassname</I></DT> |
| <DD>For StylesheetTestletDriver, use a different class for the testing algorithim</DD> |
| <DT>-load <I>file.properties</I></DT> |
| <DD>(read in a .properties file, that can set any/all of the other opts) |
| This option is automatically used by the Ant build.xml file, so you normally |
| would not specify it yourself.</DD> |
| </DL> |
| <P>Note that most options work equivalently with either Xalan-J or Xalan-C tests.</P> |
| <P>When running tests using Ant, the <xalantest> task actually |
| marshalls various Ant variables and uses the precompiled org.apache.qetest.xsl.XSLTestAntTask |
| to actually execute the test (either in the same JVM or forked depending on |
| ${fork-tests}. It simply strips the appropriate set of prefixes |
| off of required Ant variables and dumps them into an XSLTestAntTask.properties |
| file on disk, which it tells the test executing to -load.</P> |
| </FONT></TD></TR></TABLE><BR> |
| |
| <A name="how-to-run-c"><!--anchor--></A> |
| <TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="666699" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG alt="" border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>How-to: Run Xalan-C tests</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"> </TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif"> |
| <P>In progress. A few C++ API tests are checked into the <CODE><FONT face="courier, monospaced">xml-xalan/c/Tests</FONT></CODE> |
| repository area already. To execute any set of 'conformance' tests with the |
| Xalan-C processor, we currently use the |
| org.apache.qetest.xsl.<A href="apidocs/org/apache/qetest/xsl/XalanCTestlet.html">XalanCTestlet</A> |
| driver. This is written in Java to take advantage of the framework and |
| results reporting, but basically constructs a command line for each test |
| and then shells out to <CODE><FONT face="courier, monospaced">TestXSLT.exe -in file.xsl...</FONT></CODE> to run the test; |
| it then uses the same validation routines as the Java ConformanceTest.</P> |
| </FONT></TD></TR></TABLE><BR> |
| </TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD bgcolor="#0086b2"><IMG alt="dot" height="1" src="resources/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" size="-1"><I> |
| Copyright © 2000 The Apache Software Foundation. |
| All Rights Reserved. |
| </I></FONT></TD></TR></TABLE></BODY></HTML> |