Running tests
Selecting test cases from TS 38.523
How to narrow thousands of 3GPP NR test cases down to a relevant set using PICS, release, feature groups, and applicability rules.
7 min read
TS 38.523-1 defines several thousand NR test cases. Almost none of them apply to your device. Applicability is derived mechanically from your PICS declarations — declare capabilities honestly and the applicable set falls out.
Derive the applicable set
bashbash
aeon cases applicable --pics ./pics.yaml --release 18 --json > applicable.json jq 'length' applicable.json # e.g. 647 jq -r '.[].id' applicable.json | head
Filter dimensions
- Release — 15 through 18; a Rel-15 device should not be graded on Rel-17 cases.
- Mode — SA, NSA/EN-DC, or both.
- Domain — NAS, RRC, PDCP, RLC, MAC, IMS/VoNR, RRM, RF.
- Feature groups — RedCap, NTN, carrier aggregation, network slicing.
- Band and duplex — per-band applicability for RF suites.
Example: 647 NR SA cases
bashbash
aeon cases applicable \ --release 18 --mode sa \ --domain nas,rrc,pdcp,rlc,mac \ --band n78 --count # 647 applicable cases aeon exec run --cases-from applicable.json --build main --lanes 12
noteStart from applicability, not from the full suite. Running inapplicable cases produces noise, not coverage.
Run this against a real SDR lane
The tester is a service, not a box. Push a build, reserve a lane, get a verdict.