Xena 库

XML报告规范

概述

本页面描述了由Xena2544、Xena1564、Xena3918和Xena2889测试应用程序生成的XML报告的格式。

每个XML报告均包含测试结果部分测试配置部分。结果部分将包含实际测试结果,而配置部分则包含执行测试所使用的完整配置。

该XML报告未包含任何XML架构定义,因此XML报告的用户需要参考此维基页面。

XML 头部与顶部标签

XML报告文件以如下标准头部开头:

该报告的顶部标签为。

测试结果

结果部分被标签包围。该部分包含以下子部分:

章节标签 解释
包含整个测试套件的汇总数据。
包含吞吐量测试的结果。
包含损耗测试的结果。
包含延迟和抖动测试的结果。
包含连续测试的结果。

摘要

本节包含测试套件的摘要数据。定义了以下子标签:

标签本身不携带值。它包含以下属性:

测试公司 执行测试的公司名称
客户 客户名称
客户访问ID 测试中指定的客户访问ID
客户服务ID 测试中指定的客户服务ID

标签本身不携带值。它包含以下属性:

测试日期时间 表单测试的时间戳格式为“YYYYMMDD-HHMMSS”。采用生成报告的计算机的本地时间。
测试时长 整数,测试的总持续时间(单位:秒)。
无端口 整数,测试中使用的端口数量
无得分 整数,测试中使用的运行次数

此标签包含一个CDATA值,该值即为测试指定的注释。该标签不带任何属性。

测试类型特定部分

该报告将包含四个测试类型的专属章节,分别为、、和。

每种测试类型的部分将包含若干结果。每个结果都将被包含在标签中。结果的总计将作为结果标签的属性进行报告,而端口特定的结果则将在子标签中报告。


结果属性

该标签可能包含以下属性。某些属性仅对特定测试类型有效,具体情况通过图例标注说明:

  • THR:吞吐量
  • LOS:损失,
  • 延迟/抖动
  • B2B:背靠背
  • 全部:以上全部
属性名称 类型 解释 适用于测试类型(s)
帧尺寸 数字 本次测试所用的框架尺寸。 全部
总评分 数字 每秒数据包总速率 THR
通过率百分比 数字 及格率占最高可能分数的百分比。 THR
总传输数据包数 数字 已传输的数据包总数。 全部
总处方包数 数字 接收到的数据包总数。 全部
已接受 是/否 结果是否被接受? 全部
最大速率百分比 数字 最大速率占最大可能速度的百分比。 LOS,B2B
最大速率包数 数字 每秒数据包中使用的最大速率。 LOS,B2B
最大速率Mbps 数字 最大速率以Mbps为单位。 LOS,B2B

港口属性

属性(某些属性仅适用于特定测试类型):

属性名称 类型 解释 适用于测试类型(s)
名称 字符串 表格中端口的全称“P—” 全部
费率 数字 每秒数据包使用率。 THR
利率百分比 数字 使用率占最高限额的百分比 THR
速率Mbps 数字 使用速率(单位:Mbps) THR
损失百分比 数字 数据包丢失率(占总传输数据包的百分比)。 LOS
延迟平均值 数字 平均延迟(单位:微秒) LAT
最小延迟 数字 最小延迟(单位:微秒) LAT
最大延迟 数字 最大延迟(单位:微秒) LAT
抖动平均值 数字 平均抖动(单位:微秒) LAT
抖动最小化 数字 最小抖动(单位:微秒) LAT
抖动最大值 数字 最大抖动(单位:微秒) LAT
突发大小 数字 突发大小(字节) B2B

延迟与抖动率

延迟和抖动测试在不同速率下进行。测试结果也会按所用速率分别呈现。因此延迟和抖动部分包含另一个名为的子节,该子节封装了结果部分。此标签包含一个名为“Value”的属性,该属性以数字形式提供所用速率。

测试配置

配置部分由标签包围。其格式遵循配置文件所采用的相同结构。不过配置文件以JSON格式保存,但XML报告使用相同的标签值。有关JSON配置文件语法的详细信息,请参阅此页面

示例脚本

Xenas2544应用程序随附若干示例Python脚本,这些脚本说明了如何从命令行启动Xena2544应用程序并执行配置,以及如何使用内置的xml.dom.minidom Python包解析生成的XML报告。当然,也可使用任何其他符合标准的XML解析包。

示例

以下示例片段展示了该格式的使用方式:

 php version="1.0" encoding="utf-8"?>

 
<xena2544></xena2544
 
<testresults>
<summary>
<identification< span=""> TestCompany="Xena Networks ApS" Customer="Xena Networks" /></identification<>
<metrics< span=""> TestDateTime="20120627-091018" TestDuration="123" /></metrics<>
<comment></comment>
>
<throughput>
<result< span=""> FrameSize="64" TotalRate="1488095" PassedRatePcnt="100,00"></result<>
<port< span=""> Name="P-0-10-1" Rate="1488095" RatePcnt="100" RateMbps="1000" /></port<>
>
<result< span=""> FrameSize="128" TotalRate="844594" PassedRatePcnt="100,00"></result<>
<port< span=""> Name="P-0-10-1" Rate="844594" RatePcnt="100" RateMbps="1000" /></port<>
>
>
<loss></loss
>

>
 
<testconfiguration>

>
 
></testconfiguration</throughput</summary</testresults