pyats.aereport.testsuite package¶
testsuite
– TestSuite¶
This module contains TestSuite and some of its child elements.
- class pyats.aereport.testsuite.TestSuite¶
Bases:
pyats.aereport.toplevel.aereportelement.AEReportElement
This is xml schema for test suite results corresponding to easypy job or suite invocation
Class based on the following schema definition
<xs:element name="starttime" type="xs:dateTime"></xs:element> <xs:element name="initinfo"></xs:element> <xs:element name="iou" minOccurs="0" maxOccurs="unbounded"></xs:element> <xs:element name="setupHandler" type="InfraHandlerSectionType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="clean" type="cleanType" minOccurs="0"></xs:element> <xs:element name="prerunHandler" type="InfraHandlerSectionType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="jobexecution"></xs:element> <xs:element name="postrunHandler" type="InfraHandlerSectionType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="tims"></xs:element> <xs:element name="mailAttachment" minOccurs="0" maxOccurs="unbounded"></xs:element> <xs:element name="reportHandler" type="InfraHandlerSectionType" minOccurs="0"/> <xs:element name="archivefile"></xs:element> <xs:element name="stoptime" type="xs:dateTime"></xs:element> <xs:element name="runtime"></xs:element> <xs:element name="summary" type="summaryType"/> <xs:element name="abort" minOccurs="0"></xs:element>
- starttime¶
Time at which the job is invoked just before it locks testbed/image and does initialization. It should be the same as the timestamp used for creating the runinfo directory name: “job-timestamp”
- Type
datetime
- initinfo¶
- Type
- jobexecution¶
Job file execution information stored here
- Type
- mailAttachments¶
mailAttachments - list of MailAttachment objects. Pointer to the user generated files for attaching to e-mail report.
- Type
- reporthandler¶
reporthandler
- Type
- archivefile¶
Pointer to the archive log file (if one was requested) for the job run. It should be relative to root of ATS tree.
- Type
- stoptime¶
Time at which the job completes, right after the report is generated and just befored it archives the results
- Type
datetime
- runtime¶
- Type
timedelta
- get_infrahandler(tag, name)¶
Searches within infrahandlers lists whether an infrahandler of a given name already exists. It uses the tag to determine which list to search e.g. prerunhandlers list, etc. If the tag is reportHandler, the assigned value is returned regardless of name matching.
- set_args(**kwargs)¶
Set testsuite set_args
- Parameters
archivefile (str) – Pointer to the archive log file (if one was requested) for the job run. It should be relative to root of ATS tree.
abort (dict) – Reports abort from user, abnormal script termination, etc.
ats (dict) – ATS tree info
params (dict) – internally calculated “final” values of various parameters based on CLI, control and CONFIG files (_easySetKey / _easyGetKey)
report (dict) – Report for easypy/ats_easy/autotest
logfile (dict) – File in which the job logs are saved
release (str) – What is the release
image (str) – path to image
submitter (str) – Who submitted the testsuite
user (str) – userid of the current process/person launching
pyats run job
tbautoselect (str) – List of Testbed names selected
testbed (str) – Testbed selected
jobid (str) – JobId is set for easypy runs only
CONFIG (str) – Full path of CONFIG file that has been sourced
host (str) – This is the value of TestHost keyword in autoetest context and TRPhosts for easypy context. It is the host on which easypy is executed.
owner (str) – Owner of easypy (unix) process
topology (str) – See Topomap xml schema for details – testbed and device info will be populated from CONFIG file
mailattachment (list) – Pointer to the user generated files for attaching to e-mail report.
Submodules¶
clean
– Clean¶
This module implement Clean section used by TestSuite.
- class pyats.aereport.testsuite.clean.Clean¶
Bases:
pyats.aereport.toplevel.aereportelement.AEReportElement
Clean routine prior to job execution
Class based on the following schema definition
<xs:complexType name="cleanType"> <xs:sequence> <xs:element name="starttime" type="xs:dateTime"/> <xs:element name="device" maxOccurs="unbounded">...</xs:element> <xs:element name="stoptime" type="xs:dateTime"/> <xs:element name="runtime">...</xs:element> </xs:sequence> </xs:complexType>
- starttime¶
Start time of clean
- Type
datetime()
- device¶
CleanDevice object
- Type
- stoptime¶
Stop time of clean
- Type
datetime()
- class pyats.aereport.testsuite.clean.CleanDevice¶
Bases:
pyats.aereport.toplevel.aereportelement.AEReportElement
Clean device used in Clean Class based on the following schema definition
<xs:element name="device" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="name"/> <xs:element name="logfile"></xs:element> </xs:sequence> </xs:complexType> </xs:element>
jobexecution
– Job Execution Elements¶
This module contains jobexecution and its related child elements.
- class pyats.aereport.testsuite.jobexecution.JobExecution¶
Bases:
pyats.aereport.toplevel.aereportelement.AEReportElement
Class based on the following schema definition
<xs:element name="jobexecution"> <xs:complexType> <xs:sequence> <xs:element name="starttime" type="xs:dateTime">...</xs:element> <xs:element name="runinfo" type="runinfoType"/> <xs:element name="testscript" minOccurs="0" maxOccurs="unbounded">...</xs:element> <xs:element ref="result"/> <xs:element name="stoptime" type="xs:dateTime">...</xs:element> <xs:element name="runtime">...</xs:element> </xs:sequence> </xs:complexType> </xs:element>
- starttime¶
- Type
datetime
- stoptime¶
- Type
datetime
- runtime¶
- Type
timedelta
- add_testscript(ts, taskid='')¶
Create a testscript
- Parameters
taskid (str) – taskid of the testscript
- children = ['starttime', 'runinfo', 'testscripts', 'result', 'stoptime', 'runtime']¶
- is_last_testscript_closed()¶
Return if the last testscript is closed
- Returns
Return 1 if last testscript was closed, else False
- Return type
Bool
mailattachment
– MailAttachment¶
This module implements MailAttachment class.
- class pyats.aereport.testsuite.mailattachment.MailAttachment¶
Bases:
pyats.aereport.toplevel.aereportelement.AEReportElement
Pointer to the user generated files for attaching to e-mail report. Class based on the following schema definition
<xs:element name="mailAttachment" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation> Pointer to the user generated files for attaching to e-mail report. </xs:documentation> </xs:annotation> </xs:element>
- tag¶
Default value = ‘mailAttachment’. This is to ensure that all elements contain a tag attribute.
- Type
- generate_dom(parent)¶
Override the default behavior of AEReportElement.generate_dom
- Parameters
parent (AEReportElement) – The xml element that should be used as a parent for this userdef
tsabort
– Tsabort¶
This module implements MailAttachment class.
- class pyats.aereport.testsuite.tsabort.TSAbort¶
Bases:
pyats.aereport.toplevel.aereportelement.AEReportElement
Reports abort from user, abnormal script termination, etc.
Class based on the following schema definition
<xs:element name="abort" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="time"></xs:element> <xs:element name="type"></xs:element> </xs:sequence> </xs:complexType> </xs:element>