如何修改TestStand XML报告

更新 May 11, 2023

环境

软件

  • TestStand

  • 使用XML报告格式时,我想将自定义数据添加到TestStand报告标题中。做这个的最好方式是什么?
  • 我想将信息放入当前测试运行期间创建的报告中。

TestStand的XML报告取决于两个文件:每次运行测试时都会创建的XML文件(.xml),以及预先创建并在报告选项以及第一行中指定的样式表(.xsl)。 .xml文件。因此,要修改结果报告,我们必须同时更改XSL样式表和生成XML文件的TestStand代码。本文档讨论了对TestStand进行更改以采用变量的值并将其添加到给定序列文件的报告标题顶部的问题。所讨论的许多概念应该经过修改后适用于您的TestStand报告的其余部分。由于XML是独立定义的标准,因此在继续之前复查有关XSLTXPATH的信息可能会有所帮助。

注意:本文的说明从TestStand 2010 SP1附带的样式表(.xsl)文件开始。此样式表文件与TestStand 4.2.x附带的样式表文件相似,但不一定相同。较早版本的TestStand具有XSL文件,这很可能会有所不同,因为针对TestStand 4.2.x重新组织了XSL文件的结构。

使用TestStand的XML修改:
首先,需要对测试序列进行更改,以将给定变量的值保存到生成的XML文件中。因为我们正在修改报告标题,所以可以使用ModifyReportHeader回调进行更改。
  1. 在序列文件中,在序列窗格中右键单击>> 序列文件回调来添加回调从列表中添加ModifyReportHeader并关闭对话框。
  2. 在新的ModifyReportHeader序列中,添加一个名为CustomText的新Local变量。该变量是此示例中使用的占位符,并且可以替代您选择的变量,包括在测试运行期间被赋予值的动态变量。此变量的值将是添加到报表中的新值,因此对于此示例,请为其赋予一个有意义的值,例如“我的新报表文本”。
  3. 最后一步是从新变量生成XML,并将其附加到已经传递到回调中的Parameters.ReportHeader XML中。启动ModifyReportHeader时,Parameters.ReportHeader字符串包含由指定流程模型中的默认TestStand报表生成的XML。我们可以对此进行追加,以将更多数据添加到XML文件中,以供本文的第二部分使用。为此,请使用以下表达式:
Parameters.ReportHeader + = Locals.CustomText.GetXML(XMLOption_NoOptions,0,“ CustomText”,Parameters.ReportOptions.NumericFormat)


GetXML函数获取有关PropertyObject的信息,并将其转换为格式正确的XML字符串。有关更多信息,请参见此功能的TestStand帮助。


TestStand外部的XSL修改:
现在已经将数据添加到XML文件,必须修改XSL文件以显示新数据。

在文本编辑器中打开horizontal.xsl,然后在文档中搜索ADD_HEADER_INFO部分。此部分应使用HTML注释标签(“ <!-”和“->”)注释掉。使用HTML,添加信息以格式化并显示上一节中添加到XML文件的信息。对于此示例,我们将使用以下HTML:
<font face =“ VERDANA” size =“ 4” color =“#003366”>
<xsl:value-of select =“ // Report / Prop [@ Name ='CustomText']” />
</ font>
这将检索具有Name属性为“ CustomText”的第一个Prop节点(在第一个Report节点下方)的值-这是我们在上一节的TestStand中创建的值。检索到的值使用<font>标记格式化。通过使用XPath选择该值。如果您尝试获取与本示例中使用的值不同的值,请查看下面链接的XPath教程,以确定如何引用该值。

附加信息

检查.XML文件时,许多机器将使用默认的Internet浏览器打开,并使用XML文件第一行中的样式表显示XML表的数据。为了查看XML源代码,请确保使用文本编辑器或类似程序打开文件。