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

