From typo3-testing
Use when setting up TYPO3 extension test infrastructure, writing unit/functional/E2E tests, configuring PHPUnit 11/12/13, mutation testing, mocking final classes (v14), CI/CD matrix across TYPO3 12/13/14.3 LTS, dev-dependency consolidation via typo3-ci-workflows meta-package, or debugging CI failures. Also triggers on: testing-framework setup, ensure proper testing, test matrix, integration testing, e2e testing, coverage, test generation.
How this skill is triggered — by the user, by Claude, or both
Slash command
/typo3-testing:typo3-testingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
**When enhancing an existing test suite** (not from scratch), run FIRST:
assets/AGENTS.mdassets/Build/Scripts/runTests.shassets/Build/playwright/package.jsonassets/Build/playwright/playwright.config.tsassets/Build/playwright/tests/playwright/accessibility/modules.spec.tsassets/Build/playwright/tests/playwright/config.tsassets/Build/playwright/tests/playwright/e2e/backend-module.spec.tsassets/Build/playwright/tests/playwright/fixtures/setup-fixtures.tsassets/Build/playwright/tests/playwright/helper/login.setup.tsassets/FunctionalTests.xmlassets/FunctionalTestsBootstrap.phpassets/Makefileassets/UnitTests.xmlassets/UnitTestsBootstrap.phpassets/bootstrap.phpassets/codecov.ymlassets/docker/codeception.ymlassets/docker/docker-compose.ymlassets/example-tests/ExampleAcceptanceCest.phpassets/example-tests/ExampleFunctionalTest.phpWhen enhancing an existing test suite (not from scratch), run FIRST:
automated-assessment typo3-testing
Install other skills (e.g.
typo3-conformance,enterprise-readiness) for broader coverage.
Generates a gap report from 73+ checkpoints (PHPUnit, PHPStan, runTests.sh, CaptainHook, architecture, mutation, CI matrix, coverage).
Use the report as the task list. Resolve mechanical failures before manual test writing.
References for TYPO3 extension testing.
| Type | Use When | Speed |
|---|---|---|
| Unit | Pure logic, no DB, validators, utilities | Fast |
| Functional | DB interactions, repositories, controllers | Medium |
| Architecture | Layer constraints, dependency rules (phpat) | Fast |
| E2E (Playwright) | User workflows, browser, accessibility | Slow |
| Integration | HTTP client, API mocking, OAuth flows | Medium |
| Mutation | Test quality verification, 70%+ coverage | CI/Release |
Build/Scripts/runTests.sh is mandatory. Must be executable, support -s (suite) and -p (PHP version).
Netresearch default: Build/captainhook.json (declared in composer.json extra.captainhook.config). Verify: ls Build/captainhook.json .git/hooks/pre-commit 2>/dev/null (see references/captainhook-setup.md).
# Setup (from skill dir)
scripts/setup-testing.sh [--with-e2e]
scripts/validate-setup.sh
scripts/generate-test.sh <Type> <Class>
# Run (always via runTests.sh)
Build/Scripts/runTests.sh -s unit|functional|phpstan|cgl|mutation|ci
Verify tests fail before fix, pass after. Bug fixes use the strict TDD loop in references/tdd-discipline.md — no "tested/verified" claims without pasted output.
Unit tests required (70%+ coverage). Functional tests required for DB operations. phpat required for architecture points. PHPStan level 10.
references/, .md implied)unit-testing.md | functional-testing.md | functional-test-patterns.md | integration-testing.md | e2e-testing.md | accessibility-testing.md | ddev-testing.md | test-runners.md | architecture-testing.md | ci-debugging.md | ci-cd.md | quality-tools.md | mutation-testing.md | fuzz-testing.md | performance-testing.md | typo3-v14-final-classes.md | mock-validity.md | javascript-testing.md | captainhook-setup.md | enforcement-rules.md | event-dispatch-testing.md | crypto-testing.md | test-environment-guards.md | sonarcloud.md | typo3-ci-config-patterns.md | tdd-discipline.md | ci-workflows-meta-package.md | synthetic-secret-fixtures.md | release-workflow-validation.md | asset-templates-guide.md | backend-module-render-verification.md
ci-debugging.mdfunctional-testing.mdmock-validity.mdEnvironment::initialize, NormalizedParams TypeError, backupGlobals → test-environment-guards.mdevent-dispatch-testing.mdci-workflows-meta-package.mdsynthetic-secret-fixtures.mdrelease-workflow-validation.mdbackend-module-render-verification.mdWhole-repo audit for over-engineering: finds dead code, unnecessary abstractions, stdlib-replaceable dependencies. Outputs ranked findings and net line/dep savings.
npx claudepluginhub netresearch/claude-code-marketplace --plugin typo3-testing