ワンクリックで
layer-12-testing
Expert knowledge for Testing Layer modeling in Documentation Robotics
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Expert knowledge for Testing Layer modeling in Documentation Robotics
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Expert knowledge for Data Store Layer modeling in Documentation Robotics
Graph-based code intelligence for using dr analyzer subcommands to understand codebase structure, discover elements, and verify model alignment
Expert knowledge for Application Layer modeling in Documentation Robotics
Expert knowledge for Motivation Layer modeling in Documentation Robotics
Expert knowledge for Business Layer modeling in Documentation Robotics
Expert knowledge for Security Layer modeling in Documentation Robotics
| name | LAYER_12_TESTING |
| description | Expert knowledge for Testing Layer modeling in Documentation Robotics |
| triggers | ["testing","test coverage","test case","input partition","ISP","test strategy","coverage model"] |
| version | 0.8.3 |
Layer Number: 12 Specification: Metadata Model Spec v0.8.3 Purpose: Defines test coverage using ISP (Input Space Partitioning) Coverage Model, specifying coverage requirements, test cases, and input partitions.
The Testing Layer captures test coverage strategy:
This layer uses ISP Coverage Model (systematic input space partitioning).
Central Entity: The TestCoverageModel is the core modeling unit.
CLI Introspection: Run
dr schema types testingfor the authoritative, always-current list of node types. Rundr schema node <type-id>for full attribute details on any type.
| Entity Type | Description |
|---|---|
| TestCoverageModel | Root coverage model for system/component |
| TestCoverageTarget | What needs testing (API, feature, data) |
| InputSpacePartition | Partition of input space |
| PartitionValue | Value/range within partition |
| InputPartitionSelection | Selected partition values for coverage |
| InputSelection | Concrete resolved input value chosen from a partition for a specific test case |
| CoverageRequirement | Specific coverage requirement |
| TestCaseSketch | High-level test case description |
| OutcomeCategory | Expected outcome categories |
| ContextVariation | Environmental/contextual variation |
| EnvironmentFactor | Environment-specific factor |
| PartitionDependency | Dependencies between partitions |
| CoverageGap | Identified gap in coverage |
| CoverageExclusion | Explicitly excluded coverage |
| CoverageSummary | Summary of coverage status |
| TargetCoverageSummary | Coverage summary for target |
| TargetInputField | Input field for target |
Use this decision tree before assigning a type to any testing concept.
IS this the root coverage plan for a system, service, or feature?
→ testing.testcoveragemodel
IS this a specific thing being tested (an API operation, feature, workflow, data field)?
→ testing.testcoveragetarget
IS this a division of an input field's possible values (valid/invalid/boundary ranges)?
→ testing.inputspacepartition
IS this one specific value or boundary within a partition?
→ testing.partitionvalue
IS this a constraint that links partition values to other partitions (e.g., field B depends on field A)?
→ testing.partitiondependency
IS this a declarative selection of which partition values to exercise in a test run?
→ testing.inputpartitionselection
IS this a single concrete resolved value chosen from a partition for a specific test case?
→ testing.inputselection
IS this an overall coverage requirement (criteria like "each-choice", "pairwise")?
→ testing.coveragerequirement
IS this a concrete high-level description of a single test case?
→ testing.testcasesketch
IS this a category of expected outcomes (success, error, edge-case)?
→ testing.outcomecategory
IS this a test strategy variation type — functional, load, security, regression, smoke, or exploratory testing?
→ testing.contextvariation
IS this a concrete environmental setting with a specific value (e.g., os=Linux, locale=en-US, network=low-bandwidth)?
→ testing.environmentfactor
IS this an input field on a target that is mapped to partitions?
→ testing.targetinputfield
IS this an identified gap — something that should be tested but is not?
→ testing.coveragegap
IS this a deliberate decision to NOT test something, with documented rationale?
→ testing.coverageexclusion
IS this a rollup of coverage metrics across all targets?
→ testing.coveragesummary
IS this a per-target rollup of sketch/implementation/automation counts?
→ testing.targetcoveragesummary
Activate when the user:
Outgoing (Testing → Other Layers):
motivation.supports-goals → Motivation Layer (quality goals)motivation.fulfills-requirements → Motivation Layer (test requirements)business.covers-process → Business Layer (process coverage)api.tests-operation → API Layer (API endpoint testing)data.validates-schema → Data Model Layer (data validation)ux.tests-view → UX Layer (UI testing)Incoming (Other Layers → Testing):
# Add coverage model
dr add testing testcoveragemodel "API Coverage Model"
# Add coverage target
dr add testing testcoveragetarget "Login API Coverage"
# Add test case sketch
dr add testing testcasesketch "Valid Login Test"
# List coverage models
dr list testing --type testcoveragemodel
# Validate testing layer
dr validate --layers testing
# Export coverage report
dr export markdown --layers testing
id: testing.testcoveragemodel.login-api
name: "Login API Coverage Model"
type: testcoveragemodel
properties:
version: "1.0"
application: application.service.auth-service
description: "ISP coverage model for the Login API"
id: testing.testcoveragetarget.login-endpoint
name: "Login Endpoint Coverage"
type: testcoveragetarget
properties:
targetType: api-endpoint
description: "POST /auth/login — validates credentials and returns a JWT"
priority: critical
id: testing.testcasesketch.valid-login
name: "Valid Login Test Case"
type: testcasesketch
properties:
status: draft
description: "Successful login with valid email and password returns 200 with JWT"
implementationFormat: automated
Before declaring testing layer extraction complete, verify each type was considered:
If any type has ZERO elements, explicitly decide: "This type doesn't apply to this codebase" with reasoning.