Skip to content

Feature: Implement TDD & ATDD Skill for Spring Boot #151

@giuseppe-trisciuoglio

Description

@giuseppe-trisciuoglio

Feature: Implement TDD & ATDD Skill for Spring Boot

Description

This issue proposes the creation and implementation of a new specialized skill for the developer-kit plugin to provide Manus with the knowledge and procedural workflows for Test-Driven Development (TDD) and Acceptance Test-Driven Development (ATDD) within the Spring Boot ecosystem. While the existing spring-boot-test-patterns skill provides general testing infrastructure knowledge, this new skill will focus specifically on the methodology and design approach of writing tests before code, adhering to the Red-Green-Refactor cycle and business-aligned acceptance criteria.

The primary objective is to equip the agent with the ability to design software by defining its behavior through tests first, ensuring that the implementation is both minimal and robust. This approach promotes cleaner architecture, higher code quality, and better alignment with business requirements through ATDD.

Proposed Skill Content

The proposed skill will encompass several key areas of the TDD and ATDD methodologies, as outlined in the table below:

Focus Area Description Key Components
Core Methodology The foundational Red-Green-Refactor cycle for software design. Failing test creation, minimal code implementation, and safe refactoring.
ATDD Integration Mapping business acceptance criteria to executable tests before implementation. Happy path definition, edge case identification, and stakeholder alignment.
Practical Patterns Standardized approaches to writing readable and maintainable tests. FIRST principles, Arrange-Act-Assert (AAA) pattern, and fluent assertions.
Infrastructure Setup and utility patterns for efficient TDD workflows in Spring Boot. ValidatorFactory configuration, reusable test fixtures, and helper methods.

Methodology and Design Philosophy

The skill will emphasize the FIRST principles (Fast, Independent, Repeatable, Self-validating, and Timely) to ensure that the test suite remains a valuable asset throughout the development lifecycle. By adopting the Arrange-Act-Assert pattern, the skill will guide the agent in creating tests that serve as executable documentation, clearly demonstrating how the code should behave under various conditions.

Furthermore, the Acceptance Test-Driven Development (ATDD) component will bridge the gap between technical implementation and business value. This involves defining acceptance criteria from the user's perspective—such as a password reset functionality—before any logic is written, ensuring that development remains focused on delivering the intended business outcomes.

References

The implementation will be grounded in industry best practices and the following technical resources:

Implementation Tasks

The following tasks are required to complete the implementation of this skill:

  1. Workflow Definition: Research and formalize the TDD/ATDD procedural workflow specifically tailored for Spring Boot applications.
  2. Skill Initialization: Create the SKILL.md file with appropriate metadata and high-level instructions for the agent.
  3. Template Development: Develop reusable templates and boilerplate for TDD-based Spring Boot components (e.g., Services, Controllers).
  4. Reference Documentation: Compile advanced patterns and edge-case handling strategies into the references/ directory.
  5. Validation: Ensure the new skill adheres to the project's quality standards using the quick_validate.py tool.

Metadata

Metadata

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions