Skip to content

AIENG-379: emit per-suite start timestamp for robot runner (forward-port of #1418) - #1420

Open
ItIsUday wants to merge 3 commits into
mainfrom
feature/AIENG-379-robot-suite-timestamp-main
Open

ItIsUday wants to merge 3 commits into
mainfrom
feature/AIENG-379-robot-suite-timestamp-main

Conversation

@ItIsUday

@ItIsUday ItIsUday commented Nov 2, 2026

Copy link
Copy Markdown
Contributor

Forward-port of #1418 (v1) to main.

Why

The robot runner's elapsed/parallelization numbers can't be computed because robot test cases land with no real start time — they fall back to ingest time (all cases in a run cluster within a few milliseconds). Root cause is in this plugin: Robot's output.xml records a per-suite starttime, but parse_func read it only to derive each case's duration and then discarded it, emitting a single flat <testsuite name="robot"> with no timestamp. Downstream, the suite timestamp is what the server resolves and stamps onto every case in the suite, so with none emitted, robot timing was lost.

What changed

  • Emit one <testsuite> per leaf suite, each tagged with its own start timestamp, instead of one flat robot suite — so each case inherits its real suite start.
  • Normalize the timestamp to ISO-8601 naive (no timezone): RF < 7.0's starttime (20210319 11:34:50.085) is reshaped via strptime(...).isoformat(); RF 7.0+'s already-ISO start passes through untouched. Timezone resolution stays server-side.
  • Absent/malformed start times degrade to None (server falls back as before) rather than failing the upload.
  • Test paths are unchanged (built from each case's classname, not the suite element), so existing record/subset goldens still match. Added a parse_func test asserting per-suite timestamps.

ItIsUday and others added 3 commits November 2, 2026 14:32
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…-timestamp

AIENG-379: emit per-suite start timestamp for robot runner
…-suite-timestamp-main

# Conflicts:
#	smart_tests/test_runners/robot.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant