AgentSkillsCN

robotframework-results

将 Robot Framework 的 output.xml 结果解析为 JSON 摘要、详细的套件/测试细分、标签与关键性统计、执行错误、失败测试信息、关键字级错误,以及耗时信息。当用户要求读取或合并 output.xml、统计通过/失败次数、标签统计、关键性等级、错误信息、运行时间、最慢的测试/关键字,或通过 rebot 合并/融合多个输出时,可使用此技能。

SKILL.md
--- frontmatter
name: robotframework-results
description: Parse Robot Framework output.xml results into JSON summaries, detailed suite/test breakdowns, tag and criticality stats, execution errors, failed test messages, keyword-level errors, and timing. Use when asked to read/merge output.xml, compute pass/fail counts, tag stats, criticality, error messages, elapsed time, slowest tests/keywords, or combine/merge multiple outputs via rebot.

Robot Framework Results

Use the bundled script to read Robot Framework output.xml and return JSON. It supports:

  • summary totals
  • detailed suite/test breakdowns
  • tag statistics and criticality grouping
  • execution errors, failed test messages, and keyword-level errors
  • timing (keyword timing is opt-in)
  • single or multiple outputs (merge or combine with rebot)

Quick start

Single file summary:

bash
python scripts/rf_results.py --output output.xml --sections summary

Multiple outputs, merged (--merge replaces earlier results when tests overlap):

bash
python scripts/rf_results.py --outputs out1.xml out2.xml --merge --sections summary,details

Multiple outputs, combined under a new top-level suite (no --merge):

bash
python scripts/rf_results.py --outputs out1.xml out2.xml --name Combined --sections summary

Include keyword timing in timing output:

bash
python scripts/rf_results.py --output output.xml --sections timing --include-keyword-timing

Output sections

  • summary: totals, suite/test counts, overall status
  • details: suites, tests, failed tests, tag stats, criticality stats
  • errors: execution errors, failed test messages, keyword errors
  • timing: totals and slowest tests; keyword timing requires --include-keyword-timing

Notes

  • Criticality grouping: prefer test.critical when available; otherwise infer from tags critical, noncritical, or non-critical. If neither is set, group as unspecified.
  • For multiple outputs, use --merge to mirror rebot --merge behavior. Without --merge, rebot combines outputs under a new top-level suite (name via --name).
  • JSON output is written to stdout. Use --pretty for indented JSON.