DCL Test Design - zigbee-alliance/distributed-compliance-ledger GitHub Wiki
π DCL Modules β Test Design
This document provides a high-level overview of the test design strategies applied to each core module of the Distributed Compliance Ledger (DCL).
It focuses on verifying command behavior (CLI and REST), positive and negative parameter handling, role-based access control, and data consistency across the system after interactions.
The full Test Design with all use cases is placed in CSA-DCL-Queries-General.xlsx
π§© Modules Covered
compliance
β Certification, revocation, and compliance information for device models.dclauth
β Identity, roles, and access control for all actors in the ledger.dclupgrade
β Governance-based upgrade proposals and execution flow.model
β Device model definitions, updates, versioning, and metadata.pki
β Certificate authority logic (PAA/PAI), X.509 cert lifecycle (propose, approve, revoke).validator
β Node validator metadata, description, and approval process.vendorinfo
β Vendor registration, metadata, and public info publication.
β Test Design Objectives
For each module, the following aspects are tested:
-
CLI & REST Command Behavior
- Correct routing, return structure, and decoding
- Endpoint availability and error feedback
-
Positive Input Scenarios
- Valid arguments produce expected changes or outputs
- Persistence and retrieval of state changes
-
Negative Input Scenarios
- Empty, malformed, or unauthorized parameters
- Missing required flags or conflicting values
-
Role-Based Access Validation
- Trustee, Vendor, CertificationCenter, NodeAdmin, etc.
- Unauthorized role attempts are rejected
-
Boundary Conditions
- Min/max string lengths, ID formats, pagination, etc.
-
Post-Upgrade Compatibility
- Commands still function after
dclupgrade
-driven chain upgrade
- Commands still function after
π Usage
This test design serves as a foundation for:
- Manual exploratory testing
- Automated integration and regression test suites
- Chain upgrade validation scenarios
- QA traceability across DCL governance and certificate workflows
For detailed per-command cases, see each moduleβs test design CSA-DCL-Queries-General.xlsx.