rails-testing

1
0
Source

Help with Rails testing including unit tests, integration tests, fixtures, and debugging test failures. Use when working on tests or debugging test issues.

Install

mkdir -p .claude/skills/rails-testing && curl -L -o skill.zip "https://mcp.directory/api/skills/download/7491" && unzip -o skill.zip -d .claude/skills/rails-testing && rm skill.zip

Installs to .claude/skills/rails-testing

About this skill

Rails Testing

Instructions

When helping with Rails testing:

  1. Understand the test structure

    • Check existing tests in test/ directory to understand project conventions
    • Look for test patterns in similar files (models, controllers, etc.)
    • Respect the project's test organization and naming conventions
  2. Running tests

    • Run all tests: bin/rails test
    • Run specific file: bin/rails test test/models/user_test.rb
    • Run specific test: bin/rails test test/models/user_test.rb:5 (line number)
    • Run with verbose output: bin/rails test -v
    • Use --fail-fast to stop on first failure: bin/rails test --fail-fast
  3. Test types in Rails

    • Models: Test business logic, validations, associations
    • Controllers: Test request/response, status codes, redirects, instance variables
    • Integration Tests: Test full workflows across multiple components
    • Fixtures: Use for test data setup
  4. Writing effective tests

    • Use descriptive test names: test_should_create_valid_user
    • Test both success and failure cases
    • Keep tests focused and isolated
    • Use fixtures for shared test data
    • Clean up side effects after tests
  5. Debugging test failures

    • Read error messages carefully - they usually point to the issue
    • Check if test data is set up correctly (fixtures, setup methods)
    • Verify assertions match the actual behavior
    • Use puts or p to inspect values
    • Check test isolation - tests shouldn't depend on each other
  6. Test database

    • Rails uses a separate test database
    • Run migrations: bin/rails db:test:prepare
    • Check test/fixtures/ for test data

Examples

When user asks: "How do I test this model?" → Create a model test in test/models/ following existing patterns, test validations and associations

When user asks: "Why is this test failing?" → Analyze the error, check test data setup, verify assertions, suggest fixes

When user asks: "Add tests for this controller" → Create controller tests in test/controllers/, test CRUD actions and edge cases

When user asks: "How do I set up test data?" → Suggest fixtures in test/fixtures/ or setup methods in the test file

You might also like

flutter-development

aj-geddes

Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.

9521,094

drawio-diagrams-enhanced

jgtolentino

Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.

846846

ui-ux-pro-max

nextlevelbuilder

"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."

571699

godot

bfollington

This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.

548492

nano-banana-pro

garg-aayush

Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.

673466

fastapi-templates

wshobson

Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.

514280

Stay ahead of the MCP ecosystem

Get weekly updates on new skills and servers.