# Reviewing Testability

> Testable code design patterns for TypeScript/React applications. Use when reviewing code for testability, implementing dependency injection, or when user mentions テスト容易性, モック, mock-friendly, DI.

- Skill: `majiayu000/reviewing-testability-3` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/reviewing-testability-3`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/reviewing-testability-3/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Web & Frontend
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/reviewing-testability-3

---


# Testability Review

## Detection

| ID  | Pattern                      | Fix                             |
| --- | ---------------------------- | ------------------------------- |
| TE1 | Direct `import { db }` usage | Inject dependency as parameter  |
| TE1 | `new Service()` inside class | Constructor injection           |
| TE2 | `fetch()` inside component   | Extract to hook/service, inject |
| TE2 | Mixed side effects + logic   | Separate pure/impure            |
| TE3 | Deep mock chains             | Simplify dependencies           |
| TE4 | Global `config` access       | Pass config as prop/parameter   |
| TE4 | `Date.now()` in logic        | Inject clock/time provider      |
| TE5 | Tight coupling               | Depend on abstractions (DIP)    |

## Criteria

Test setup < 10 lines. No deep mock chains. Dependencies explicit.

## References

| Topic   | File                                 |
| ------- | ------------------------------------ |
| DI      | `references/dependency-injection.md` |
| Pure    | `references/pure-functions.md`       |
| Mocking | `references/mock-friendly.md`        |

