TEST-INFRA: [test-architecture] Improve Robot Test Organization and Naming #2453

Open
opened 2026-04-03 18:26:18 +00:00 by freemo · 1 comment
Owner

Metadata

  • Branch: chore/m7-improve-robot-test-organization-and-naming
  • Commit Message: chore(test): improve Robot Framework test suite organization and naming conventions
  • Milestone: v3.7.0
  • Parent Epic: #1678

Background and Context

The organization and naming of Robot Framework test suites and resource files can be improved. Currently, it is difficult to locate specific test suites, and there is no clear structure for reusable keywords. This conflicts with the project's modular architecture as described in docs/specification.md and the test organization conventions outlined in CONTRIBUTING.md.

Current Behavior

Robot Framework test suite files lack a consistent naming convention and are not organized into logical subdirectories. Reusable keywords are scattered across files with no dedicated resource directory, making it difficult to locate, reuse, and maintain common keywords across different test suites.

Expected Behavior

Robot test suites are organized into logical subdirectories (e.g., robot/smoke/, robot/regression/) with all files ending in .robot. A dedicated robot/resources/ directory exists and contains all reusable keywords and resource files. The noxfile.py is updated to reflect the new directory structure.

Proposed Solution

To improve the organization and maintainability of the Robot tests:

  1. Standardize the naming of Robot test suites. All test suite files should end with .robot and be placed in subdirectories that describe their purpose (e.g., robot/smoke/smoke.robot, robot/regression/regression.robot).
  2. Create a robot/resources/ directory to store all reusable keywords and resource files. This will make it easier to find and reuse common keywords across different test suites.
  3. Update the noxfile.py to reflect the new directory structure.

Subtasks

  • Audit all existing Robot Framework test files and catalogue their current naming and location
  • Define the target subdirectory structure (e.g., robot/smoke/, robot/regression/, robot/resources/)
  • Rename all Robot test suite files to follow the .robot extension convention
  • Move test suite files into their appropriate logical subdirectories
  • Create the robot/resources/ directory and populate it with extracted reusable keywords
  • Update noxfile.py to run Robot tests from the new directory locations
  • Verify all existing Robot tests pass after the reorganization
  • Run the full nox suite and confirm all stages pass

Definition of Done

  • All Robot test suite files follow the .robot naming convention and are placed in logical subdirectories
  • A robot/resources/ directory exists and contains all reusable keywords and resource files
  • The noxfile.py is updated to run tests from the new directory locations
  • All existing Robot tests pass after the reorganization
  • A Git commit is created where the first line of the commit message matches the Commit Message in Metadata exactly, followed by a blank line, then additional lines providing relevant details about the implementation
  • The commit is pushed to the remote on the branch matching the Branch in Metadata exactly
  • The commit is submitted as a pull request to master, reviewed, and merged before this issue is marked done
  • All nox stages pass
  • Coverage >= 97%

Automated by CleverAgents Bot
Supervisor: Test Infrastructure | Agent: ca-new-issue-creator

## Metadata - **Branch**: `chore/m7-improve-robot-test-organization-and-naming` - **Commit Message**: `chore(test): improve Robot Framework test suite organization and naming conventions` - **Milestone**: v3.7.0 - **Parent Epic**: #1678 ## Background and Context The organization and naming of Robot Framework test suites and resource files can be improved. Currently, it is difficult to locate specific test suites, and there is no clear structure for reusable keywords. This conflicts with the project's modular architecture as described in `docs/specification.md` and the test organization conventions outlined in `CONTRIBUTING.md`. ## Current Behavior Robot Framework test suite files lack a consistent naming convention and are not organized into logical subdirectories. Reusable keywords are scattered across files with no dedicated resource directory, making it difficult to locate, reuse, and maintain common keywords across different test suites. ## Expected Behavior Robot test suites are organized into logical subdirectories (e.g., `robot/smoke/`, `robot/regression/`) with all files ending in `.robot`. A dedicated `robot/resources/` directory exists and contains all reusable keywords and resource files. The `noxfile.py` is updated to reflect the new directory structure. ## Proposed Solution To improve the organization and maintainability of the Robot tests: 1. Standardize the naming of Robot test suites. All test suite files should end with `.robot` and be placed in subdirectories that describe their purpose (e.g., `robot/smoke/smoke.robot`, `robot/regression/regression.robot`). 2. Create a `robot/resources/` directory to store all reusable keywords and resource files. This will make it easier to find and reuse common keywords across different test suites. 3. Update the `noxfile.py` to reflect the new directory structure. ## Subtasks - [ ] Audit all existing Robot Framework test files and catalogue their current naming and location - [ ] Define the target subdirectory structure (e.g., `robot/smoke/`, `robot/regression/`, `robot/resources/`) - [ ] Rename all Robot test suite files to follow the `.robot` extension convention - [ ] Move test suite files into their appropriate logical subdirectories - [ ] Create the `robot/resources/` directory and populate it with extracted reusable keywords - [ ] Update `noxfile.py` to run Robot tests from the new directory locations - [ ] Verify all existing Robot tests pass after the reorganization - [ ] Run the full nox suite and confirm all stages pass ## Definition of Done - [ ] All Robot test suite files follow the `.robot` naming convention and are placed in logical subdirectories - [ ] A `robot/resources/` directory exists and contains all reusable keywords and resource files - [ ] The `noxfile.py` is updated to run tests from the new directory locations - [ ] All existing Robot tests pass after the reorganization - [ ] A Git commit is created where the **first line** of the commit message matches the Commit Message in Metadata exactly, followed by a blank line, then additional lines providing relevant details about the implementation - [ ] The commit is pushed to the remote on the branch matching the **Branch** in Metadata exactly - [ ] The commit is submitted as a **pull request** to `master`, reviewed, and **merged** before this issue is marked done - [ ] All nox stages pass - [ ] Coverage >= 97% --- **Automated by CleverAgents Bot** Supervisor: Test Infrastructure | Agent: ca-new-issue-creator
freemo added this to the v3.7.0 milestone 2026-04-03 18:26:22 +00:00
Author
Owner

Issue triaged by project owner:

  • State: Verified
  • MoSCoW: Could Have — Desirable improvement but not necessary for the milestone. Include only if time permits.

Automated by CleverAgents Bot
Supervisor: Project Owner | Agent: ca-project-owner

Issue triaged by project owner: - **State**: Verified - **MoSCoW**: Could Have — Desirable improvement but not necessary for the milestone. Include only if time permits. --- **Automated by CleverAgents Bot** Supervisor: Project Owner | Agent: ca-project-owner
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
cleveragents/cleveragents-core#2453
No description provided.