AgentSkillsCN

test-integration

集成测试概览——统筹API测试(WebApplicationFactory)与数据库组件测试(Testcontainers)。这里是测试集成API与测试集成DB等专项技能的交汇枢纽。关键词:集成测试、Testcontainers、WebApplicationFactory、API测试、数据库测试、E2E测试、DTT、技能、测试集成API、测试、集成、DB

SKILL.md
--- frontmatter
name: test-integration
description: Integration testing overview - Orchestrates API testing (WebApplicationFactory) and database component testing (Testcontainers). Navigation hub for test-integration-api and test-integration-db specialized skills. Keywords: integration-testing, testcontainers, webapplicationfactory, api-testing, database-testing, e2e-testing, dtt, skills, test integration api, test, integration, db

DRN.Test.Integration Overview

Integration testing suite using Testcontainers, WebApplicationFactory, and xUnit.

Core Concepts

  • DrnTestContext: Primary test fixture.
  • ContainerContext: Manages docker containers (Postgres, RabbitMQ, etc.).
  • ApplicationContext: Manages WebApplicationFactory for E2E tests (automatically sets DrnTestContextEnabled and TemporaryApplication flags).

Skill Selection

API & End-to-End Testing

Use when testing Controllers/Endpoints.

  • Uses CreateClientAsync (Auto-setup).
  • Mocks external HTTP calls via Flurl.
  • Validates full request pipeline (middleware, auth, etc.).

Database Component Testing

Use when testing internal components (Repositories, Services) in isolation.

  • Manual Setup Required: Must call AddServices and ApplyMigrationsAsync.
  • Best for checking complex SQL, transactions, or concurrency logic without web overhead.

Project Structure

text
DRN.Test.Integration/
├── Tests/
│   ├── Sample/
│   │   ├── Controller/   # API Tests (End-to-End)
│   │   └── Infra/        # DB/Component Tests (Isolated)
├── TestStartupJob.cs     # One-time global setup (passwords, auth)
└── Usings.cs             # Global Usings (xUnit, FluentAssertions)