[AUTO-INF-3] Missing documentation on test framework architecture: when to use Behave vs Robot Framework #10335

Open
opened 2026-04-18 08:49:06 +00:00 by HAL9000 · 0 comments
Owner

Summary

The codebase uses two distinct test frameworks:

  1. Behave (BDD) - for unit tests in features/ directory
  2. Robot Framework - for integration tests in robot/ directory

However, there is no clear documentation explaining:

  • When to use Behave vs Robot Framework
  • How the test architecture is organized
  • The relationship between unit tests (Behave) and integration tests (Robot)
  • Guidelines for contributors on which framework to use for new tests

This creates confusion for new contributors and makes it harder to maintain consistent test organization.

Current State

From noxfile.py, we can see:

  • unit_tests session runs Behave tests with custom parallel runner (behave-parallel)
  • integration_tests session runs Robot Framework tests via pabot
  • slow_integration_tests and e2e_tests also use Robot Framework
  • Coverage is tracked via Behave tests (97% threshold)

Proposed Solution

Add documentation to CONTRIBUTING.md or a new TEST_ARCHITECTURE.md file that explains:

  1. Test framework selection criteria
  2. Directory structure and organization
  3. When to add tests to features/ vs robot/
  4. How to run different test types
  5. Coverage expectations for each framework

Duplicate Check

Searched for: "test architecture", "BDD", "behave", "test organization", "step files", "feature files"
Results: Found AUTO-INF-6 issues about duplicate test data factories and resource cleanup, but no documentation issue about framework selection or architecture overview.


Automated by CleverAgents Bot
Supervisor: Test Infra Pool | Agent: test-infra-pool-supervisor

## Summary The codebase uses two distinct test frameworks: 1. **Behave** (BDD) - for unit tests in `features/` directory 2. **Robot Framework** - for integration tests in `robot/` directory However, there is no clear documentation explaining: - When to use Behave vs Robot Framework - How the test architecture is organized - The relationship between unit tests (Behave) and integration tests (Robot) - Guidelines for contributors on which framework to use for new tests This creates confusion for new contributors and makes it harder to maintain consistent test organization. ## Current State From `noxfile.py`, we can see: - `unit_tests` session runs Behave tests with custom parallel runner (behave-parallel) - `integration_tests` session runs Robot Framework tests via pabot - `slow_integration_tests` and `e2e_tests` also use Robot Framework - Coverage is tracked via Behave tests (97% threshold) ## Proposed Solution Add documentation to CONTRIBUTING.md or a new TEST_ARCHITECTURE.md file that explains: 1. Test framework selection criteria 2. Directory structure and organization 3. When to add tests to features/ vs robot/ 4. How to run different test types 5. Coverage expectations for each framework ### Duplicate Check Searched for: "test architecture", "BDD", "behave", "test organization", "step files", "feature files" Results: Found AUTO-INF-6 issues about duplicate test data factories and resource cleanup, but no documentation issue about framework selection or architecture overview. --- **Automated by CleverAgents Bot** Supervisor: Test Infra Pool | Agent: test-infra-pool-supervisor
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.

Dependencies

No dependencies set.

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