pysys.writer.outcomes¶
Writers that record test outcomes to a variety of file formats.
TextResultsWriter¶
-
class
pysys.writer.outcomes.
TextResultsWriter
(logfile, **kwargs)[source]¶ Bases:
pysys.writer.api.BaseRecordResultsWriter
Class to log a summary of the results to a logfile in .txt format.
-
cleanup
(**kwargs)[source]¶ Called after all tests have finished executing (or been cancelled).
This is where file headers can be written, and open handles should be closed.
- Parameters
kwargs – Additional keyword arguments may be added in a future release.
-
outputDir
= None¶ The directory to write the logfile, if an absolute path is not specified. The default is the working directory.
Project
${...}
properties can be used in the path.
-
processResult
(testObj, **kwargs)[source]¶ Called when each test has completed.
This method is always invoked under a lock that prevents multiple concurrent invocations so additional locking is not usually necessary.
- Parameters
testObj (pysys.basetest.BaseTest) – Reference to an instance of a
pysys.basetest.BaseTest
class. The writer can extract data from this object but should not store a reference to it. ThetestObj.descriptor.id
indicates the test that ran.cycle (int) – The cycle number. These start from 0, so please add 1 to this value before using.
testTime (float) – Duration of the test in seconds as a floating point number.
testStart (float) – The time when the test started.
runLogOutput (str) – The logging output written to the console/run.log, as a unicode character string. This string will include ANSI escape codes if colored output is enabled; if desired these can be removed using
pysys.utils.logutils.stripANSIEscapeCodes()
.kwargs – Additional keyword arguments may be added in future releases.
-
setup
(**kwargs)[source]¶ Called before any tests begin.
Before this method is called, for each property “PROP” specified for this writer in the project configuration file, the configured value will be assigned to
self.PROP
.- Parameters
numTests – The total number of tests (cycles*testids) to be executed
cycles – The number of cycles.
xargs – The runner’s xargs
threads – The number of threads used for running tests.
testoutdir – The output directory used for this test run (equal to
runner.outsubdir
), an identifying string which often contains the platform, or when there are multiple test runs on the same machine may be used to distinguish between them. This is usually a relative path but may be an absolute path.runner – The runner instance that owns this writer. The default implementation of this methods sets the
self.runner
attribute to this value.kwargs – Additional keyword arguments may be added in a future release.
-
XMLResultsWriter¶
-
class
pysys.writer.outcomes.
XMLResultsWriter
(logfile, **kwargs)[source]¶ Bases:
pysys.writer.api.BaseRecordResultsWriter
Class to log results to logfile in a single XML file.
The class creates a DOM document to represent the test output results and writes the DOM to the logfile using toprettyxml(). The outputDir, stylesheet, useFileURL attributes of the class can be overridden in the PySys project file using the nested <property> tag on the <writer> tag.
- Variables
outputDir (str) – Path to output directory to write the test summary files
stylesheet (str) – Path to the XSL stylesheet
useFileURL (str) – Indicates if full file URLs are to be used for local resource references
-
cleanup
(**kwargs)[source]¶ Called after all tests have finished executing (or been cancelled).
This is where file headers can be written, and open handles should be closed.
- Parameters
kwargs – Additional keyword arguments may be added in a future release.
-
processResult
(testObj, **kwargs)[source]¶ Called when each test has completed.
This method is always invoked under a lock that prevents multiple concurrent invocations so additional locking is not usually necessary.
- Parameters
testObj (pysys.basetest.BaseTest) – Reference to an instance of a
pysys.basetest.BaseTest
class. The writer can extract data from this object but should not store a reference to it. ThetestObj.descriptor.id
indicates the test that ran.cycle (int) – The cycle number. These start from 0, so please add 1 to this value before using.
testTime (float) – Duration of the test in seconds as a floating point number.
testStart (float) – The time when the test started.
runLogOutput (str) – The logging output written to the console/run.log, as a unicode character string. This string will include ANSI escape codes if colored output is enabled; if desired these can be removed using
pysys.utils.logutils.stripANSIEscapeCodes()
.kwargs – Additional keyword arguments may be added in future releases.
-
setup
(**kwargs)[source]¶ Called before any tests begin.
Before this method is called, for each property “PROP” specified for this writer in the project configuration file, the configured value will be assigned to
self.PROP
.- Parameters
numTests – The total number of tests (cycles*testids) to be executed
cycles – The number of cycles.
xargs – The runner’s xargs
threads – The number of threads used for running tests.
testoutdir – The output directory used for this test run (equal to
runner.outsubdir
), an identifying string which often contains the platform, or when there are multiple test runs on the same machine may be used to distinguish between them. This is usually a relative path but may be an absolute path.runner – The runner instance that owns this writer. The default implementation of this methods sets the
self.runner
attribute to this value.kwargs – Additional keyword arguments may be added in a future release.
JUnitXMLResultsWriter¶
-
class
pysys.writer.outcomes.
JUnitXMLResultsWriter
(**kwargs)[source]¶ Bases:
pysys.writer.api.BaseRecordResultsWriter
Class to log test results in the widely-used Apache Ant JUnit XML format (one output file per test per cycle).
If you need to integrate with any CI provider that doesn’t have built-in support (e.g. Jenkins) this standard output format will usually be the easiest way to do it.
The output directory is published as with category name “JUnitXMLResultsDir”.
-
cleanup
(**kwargs)[source]¶ Called after all tests have finished executing (or been cancelled).
This is where file headers can be written, and open handles should be closed.
- Parameters
kwargs – Additional keyword arguments may be added in a future release.
-
outputDir
= None¶ The directory to write the XML files to, as an absolute path, or relative to the testRootDir.
Project
${...}
properties can be used in the path.
-
processResult
(testObj, **kwargs)[source]¶ Called when each test has completed.
This method is always invoked under a lock that prevents multiple concurrent invocations so additional locking is not usually necessary.
- Parameters
testObj (pysys.basetest.BaseTest) – Reference to an instance of a
pysys.basetest.BaseTest
class. The writer can extract data from this object but should not store a reference to it. ThetestObj.descriptor.id
indicates the test that ran.cycle (int) – The cycle number. These start from 0, so please add 1 to this value before using.
testTime (float) – Duration of the test in seconds as a floating point number.
testStart (float) – The time when the test started.
runLogOutput (str) – The logging output written to the console/run.log, as a unicode character string. This string will include ANSI escape codes if colored output is enabled; if desired these can be removed using
pysys.utils.logutils.stripANSIEscapeCodes()
.kwargs – Additional keyword arguments may be added in future releases.
-
setup
(**kwargs)[source]¶ Called before any tests begin.
Before this method is called, for each property “PROP” specified for this writer in the project configuration file, the configured value will be assigned to
self.PROP
.- Parameters
numTests – The total number of tests (cycles*testids) to be executed
cycles – The number of cycles.
xargs – The runner’s xargs
threads – The number of threads used for running tests.
testoutdir – The output directory used for this test run (equal to
runner.outsubdir
), an identifying string which often contains the platform, or when there are multiple test runs on the same machine may be used to distinguish between them. This is usually a relative path but may be an absolute path.runner – The runner instance that owns this writer. The default implementation of this methods sets the
self.runner
attribute to this value.kwargs – Additional keyword arguments may be added in a future release.
-
CSVResultsWriter¶
-
class
pysys.writer.outcomes.
CSVResultsWriter
(logfile, **kwargs)[source]¶ Bases:
pysys.writer.api.BaseRecordResultsWriter
Class to log results to logfile in CSV format.
Writing of the test summary file defaults to the working directory. This can be be over-ridden in the PySys project file using the nested <property> tag on the <writer> tag. The CSV column output is in the form:
id, title, cycle, startTime, duration, outcome
-
cleanup
(**kwargs)[source]¶ Called after all tests have finished executing (or been cancelled).
This is where file headers can be written, and open handles should be closed.
- Parameters
kwargs – Additional keyword arguments may be added in a future release.
-
processResult
(testObj, **kwargs)[source]¶ Called when each test has completed.
This method is always invoked under a lock that prevents multiple concurrent invocations so additional locking is not usually necessary.
- Parameters
testObj (pysys.basetest.BaseTest) – Reference to an instance of a
pysys.basetest.BaseTest
class. The writer can extract data from this object but should not store a reference to it. ThetestObj.descriptor.id
indicates the test that ran.cycle (int) – The cycle number. These start from 0, so please add 1 to this value before using.
testTime (float) – Duration of the test in seconds as a floating point number.
testStart (float) – The time when the test started.
runLogOutput (str) – The logging output written to the console/run.log, as a unicode character string. This string will include ANSI escape codes if colored output is enabled; if desired these can be removed using
pysys.utils.logutils.stripANSIEscapeCodes()
.kwargs – Additional keyword arguments may be added in future releases.
-
setup
(**kwargs)[source]¶ Called before any tests begin.
Before this method is called, for each property “PROP” specified for this writer in the project configuration file, the configured value will be assigned to
self.PROP
.- Parameters
numTests – The total number of tests (cycles*testids) to be executed
cycles – The number of cycles.
xargs – The runner’s xargs
threads – The number of threads used for running tests.
testoutdir – The output directory used for this test run (equal to
runner.outsubdir
), an identifying string which often contains the platform, or when there are multiple test runs on the same machine may be used to distinguish between them. This is usually a relative path but may be an absolute path.runner – The runner instance that owns this writer. The default implementation of this methods sets the
self.runner
attribute to this value.kwargs – Additional keyword arguments may be added in a future release.
-