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.From its SKILL.md
npx -y skills add netresearch/typo3-testing-skill --skill typo3-testingAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
4.6 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it
TYPO3 Testing Skill
Assessment-First Rule
When 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.
Applies
- "enhance/improve/strengthen tests", "increase coverage/mutation"
- "enterprise grade", "A+ testing"
Does NOT Apply
- From scratch, writing a specific test, debugging a failure
References for TYPO3 extension testing.
Test Type Selection
| 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 |
runTests.sh - Mandatory
Build/Scripts/runTests.sh is mandatory. Must be executable, support -s (suite) and -p (PHP version).
Git Hooks
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).
Commands
# 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.
Scoring Requirements
Unit tests required (70%+ coverage). Functional tests required for DB operations. phpat required for architecture points. PHPStan level 10.
References (in 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 | backend-user-access-testing.md
Content Triggers
- CI failures across TYPO3 versions →
ci-debugging.md - Functional tests with TSFE context →
functional-testing.md - Mock failures across dependency versions →
mock-validity.md - Image/extension tests,
Environment::initialize,NormalizedParamsTypeError,backupGlobals→test-environment-guards.md - Event dispatcher testing with try/catch →
event-dispatch-testing.md - Meta-package, typo3-ci-workflows, no-plugins →
ci-workflows-meta-package.md - Fake secrets, push-protection, cs-fixer concat →
synthetic-secret-fixtures.md - Burned tag, validate before tagging →
release-workflow-validation.md - Backend module 500 / wrong ViewHelper namespace / runaway canvas →
backend-module-render-verification.md - Non-admin BE-user access enforcement →
backend-user-access-testing.md
Links
What ships with it: 72 files
558.5 KB alongside SKILL.md, 19 of them executable
assets/
- AGENTS.md5.0 KB
- bootstrap.phpruns1.4 KB
- Build/playwright/.nvmrc6 B
- Build/playwright/package.json535 B
- Build/playwright/playwright.config.tsruns1.3 KB
- Build/playwright/tests/playwright/accessibility/modules.spec.tsruns2.0 KB
- Build/playwright/tests/playwright/config.tsruns712 B
- Build/playwright/tests/playwright/e2e/backend-module.spec.tsruns1.7 KB
- Build/playwright/tests/playwright/fixtures/setup-fixtures.tsruns2.7 KB
- Build/playwright/tests/playwright/helper/login.setup.tsruns975 B
- Build/Scripts/runTests.shruns19.5 KB
- codecov.yml1.6 KB
- docker/codeception.yml979 B
- docker/docker-compose.yml1.4 KB
- example-tests/ExampleAcceptanceCest.phpruns2.2 KB
- example-tests/ExampleFunctionalTest.phpruns2.4 KB
- example-tests/ExampleUnitTest.phpruns1.6 KB
- fixtures/be_users.csv361 B
- fixtures/pages.csv257 B
- fixtures/README.md2.0 KB
- fixtures/sys_category.csv228 B
- fixtures/tt_content.csv338 B
- FunctionalTestsBootstrap.phpruns1.6 KB
- FunctionalTests.xml1.4 KB
- github-actions-e2e.yml8.8 KB
- github-actions-tests.yml6.3 KB
- infection.json52.3 KB
- Makefile2.3 KB
- phpat.neon330 B
- phpat.phpruns8.4 KB
- .php-cs-fixer.dist.phpruns7.0 KB
- phpstan-baseline.neon365 B
- phpstan.neon1.4 KB
- rector.phpruns2.9 KB
- UnitTestsBootstrap.phpruns2.1 KB
- UnitTests.xml890 B
references/
- accessibility-testing.md7.5 KB
- architecture-testing.md2.7 KB
- asset-templates-guide.md3.3 KB
- checkpoints.yaml39.4 KB
32 more files not listed here. See all 72 in the repository.