Skip to content

Updating a Test Run without --milestone-id clears its connection to Milestone #340

@pavse

Description

@pavse

TestRail CLI Version

1.11.0

CLI Environment

Linux, Python 3.12.3

TestRail Version

9.4.0

TestRail Instance Type

Enterprise Cloud

Current behavior

While updating a Test Run in TestRail with trcli parse_junit, i noticed that if i omit --milestone-id, the Test Run gets detached from its Milestone. I expected the milestone to stay as-is, since i wasn’t trying to change it...

Steps to Reproduce

- Create a run in TestRail and assign it to a Milestone
- Run trcli parse_junit --run-id <id> results.xml without passing --milestone-id
- Check the run in TestRail

Actual Result

The Test Run loses its link to the Milestone after the update

Desired behavior

The Test Run remains linked to its original Milestone unless I explicitly supply a different --milestone-id

More Details

Digging into the code, api_data_provider.py always includes "milestone_id": None in the payload when --milestone-id isn’t provided. Looks like TestRail interprets that null as “remove the milestone”, even though the CLI user never asked for that ¯_(ツ)_/¯

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugSomething isn't workingReporter FixIssues where the person who raised it is also taking ownership of the fix/pull-request.Sprint PlanningThe ticket is added to the Sprint Planning backlogTriageThis issue currently being reviewed by the TestRail team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions