好的,遵照您的指令,这是系列文章的第三篇,我们将深度拆解至关重要的第四章的“序章”——4.0节。
深度解析 3GPP TS 38.522:4.0 测试用例条件与选择标准 (Test case conditions and selection criteria)
本文技术原理深度参考了3GPP TS 38.522 V18.6.0 (2025-03) Release 18规范中,关于“Chapter 4.0 Test case conditions and selection criteria”的核心章节。在精通了规范的“词汇表”(第三章)之后,我们正式踏入这份“导航地图”的核心区域。本文将为您详细解读解读这张地图的“图例”和“语法规则”——即4.0节定义的测试用例条件与选择标准。对于测试工程师李工和他负责的“Pioneer-X1”手机来说,只有掌握了本章定义的
C-、D-、E-、F-系列代码的精确含义,才能在后续数以千计的测试用例组成的“迷宫”中游刃有余。
前言:从“词典”到“语法书”
在上一篇文章中,测试工程师李工和他的团队新人小王一起,系统学习了第三章定义的术语和缩写,相当于掌握了阅读3GPP技术文档的“词典”。现在,他们站在了第四章的入口。第四章,“Recommended test case applicability”,是整份规范的心脏,其内容主体是若干张巨大的表格,每一行都代表着一个测试用(TC)。
然而,直接一头扎进这些表格是极其危险的。李工指着规范的4.0节对小王说:“小王,如果说第三章是词典,那么4.0节就是语法书。它定义了我们即将看到的那些表格中,所有代码和符号的含义。不学语法,光有词典,我们看到的将是天书。只有掌握了4.0节,我们才拥有了解码后续所有适用性规则的‘罗塞塔石碑’。”
今天,就让我们跟随李工的脚步,一起破译这块“罗塞塔石碑”,彻底搞懂5G终端测试适用性判断的底层逻辑。
1. 适用性规则的“大脑”:四大核心表格概述
4.0节开篇即点明了其核心内容:
For the purposes of the present document, the applicability of conformance test cases conditions given in Table 4.0-1 apply. The tested bands selection criteria given in Table 4.0-2 apply. The tested CA/DC configuration selection criteria given in Table 4.0-3 apply. The subtest selection criteria given in Table 4.0-4 apply. The ICS proformas used in Table 4.0-1, Table 4.0-2, Table 4.0-3 and Table 4.0-4 are defined in TS 38.508-2 unless otherwise stated.
深度解析:
这段话清晰地指出了适用性判断逻辑的四个核心支柱,分别由四个“主表”来定义:
- Table 4.0-1: 定义了测试用例的适用性条件。它解释了所有以
C开头的代码(如C001,C002…)所代表的布尔逻辑表达式。这是判断一个测试“测不测”的最根本依据。 - Table 4.0-2: 定义了测试频段的选择标准。它解释了所有以
D开头的代码(如D001,D002…)。当一个测试需要执行时,这个表决定了在哪几个频段上测。 - Table 4.0-3: 定义了测试CA/DC配置的选择标准。它解释了所有以
E开头的代码(如E001,E002…)。对于涉及载波聚合或双连接的测试,这个表决定了用哪种组合来测。 - Table 4.0-4: 定义了子测试的选择标准。它解释了所有以
F开头的代码(如F001,F002…)。对于一些包含多个子场景的复杂测试,这个表决定了具体测哪个子场景。
并且,所有这些判断的最终数据源,都被指向了TS 38.508-2,也就是我们反复强调的UE的“功能自白书”——ICS。
场景串联:李工的“四步决策法”
李工向小王总结道:“当我们分析任何一个测试用例时,都要遵循一个‘四步决策法’,这四步正好对应这四个表格。”
- 第一步(C-Code):这个测试到底需不需要做?
- 第二步(D-Code):如果要做,在哪几个频段上做?
- 第三步(E-Code):如果是CA/DC测试,用哪几个载波组合来做?
- 第四步(F-Code):如果测试分场景,具体执行哪个场景?
现在,让我们逐一深入这四个核心环节。
2. 第一步:Table 4.0-1 - 测试是否适用的“终极法官”
Table 4.0-1是TS 38.522中最为庞大和核心的表格之一,它将所有复杂的逻辑判断封装成一个个以C开头的代码。后续所有适用性表格中的“Condition”列,填写的都是这些代码。
2.1 解读一个简单的条件:C001
假设李工在Table 4.1.1-1(FR1 SA射频测试适用性)中看到了一个测试用例,其适用性条件是C001。他需要知道C001代表什么。
Table 4.0-1: Applicability of conformance test cases conditions
C001 IF (A.4.1-1/1 OR A.4.1-1/2) AND A.4.1-2/7 AND A.4.1-3/1 THEN R ELSE N/A
深度解析与场景串联:
李工开始为小王拆解这个布尔表达式:
-
布尔表达式:
IF (A.4.1-1/1 OR A.4.1-1/2) AND A.4.1-2/7 AND A.4.1-3/1 THEN R ELSE N/A -
变量解读:
A.x.y-z/w这种格式的变量,全部来自于ICS规范TS 38.508-2。这里的A代表附录A,后面的数字对应ICS表格中的Item编号。(A.4.1-1/1 OR A.4.1-1/2): 李工查阅TS 38.508-2得知,A.4.1-1/1代表“支持FR1 FDD”,A.4.1-1/2代表“支持FR1 TDD”。所以,这部分的含义是“UE支持FR1的FDD模式 或者 TDD模式”,换句话说,就是“UE支持FR1”。A.4.1-2/7: 这对应ICS中“支持SA模式”。A.4.1-3/1: 这对应ICS中“支持基于网络的信令”。对于商用UE,这几乎是必然支持的。
-
逻辑运算:
- 整个表达式的逻辑是: (支持FR1) AND (支持SA) AND (支持网络信令)。
-
结果判决:
THEN R: 如果上述所有条件都为“真”,那么结果是R(Recommended),即强制测试。ELSE N/A: 否则,结果是N/A(Not Applicable),即不适用,无需测试。
-
代入“Pioneer-X1”场景:
- 李工查看“Pioneer-X1”的ICS文件。
- 他发现制造商勾选了支持FR1 TDD(如n41, n78),所以
(A.4.1-1/1 OR A.4.1-1/2)为真。 - 制造商也勾选了支持SA模式,所以
A.4.1-2/7为真。 A.4.1-3/1也为真。- “好了,小王,”李工得出结论,“所有AND条件都满足了。所以,这个适用性为C001的测试用例,对于‘Pioneer-X1’来说,是必须测试的。”
2.2 解读一个带有否定逻辑的条件:C008
接下来,李工看到了一个更复杂的条件C008。
Table 4.0-1: Applicability of conformance test cases conditions
C008 IF A.4.1-1/2 AND A.4.1-2/8 AND A.4.1-3/1 AND NOT (A.4.3.2-1/22) AND NOT (A.4.3.2-1/22A OR A.4.3.2-1/22B) THEN R ELSE N/A
深度解析与场景串联:
这个表达式引入了NOT逻辑,变得更加有趣。
-
变量解读:
A.4.1-1/2: 支持FR1 TDD。A.4.1-2/8: 支持NSA(非独立组网)模式。A.4.1-3/1: 支持网络信令。NOT (A.4.3.2-1/22): 这里的A.4.3.2-1/22在ICS中通常代表某个特定的高级功能,比如“功率提升(Power Boosting)”。NOT意味着“UE不支持这个功能”。NOT (A.4.3.2-1/22A OR A.4.3.2-1/22B): 这同样代表不支持另外两种相关或演进的功能。
-
逻辑运算:
- 表达式的含义是:一个UE,如果它 (支持FR1 TDD) AND (支持NSA) AND (不支持功能A) AND (不支持功能B或C),那么这个测试才适用。
-
代入“Pioneer-X1”场景:
- 李工检查ICS,“Pioneer-X1”支持FR1 TDD(真)和NSA(真)。
- 但他发现,“Pioneer-X1”作为旗舰机,为了提升上行覆盖,特意支持了功率提升功能,即
A.4.3.2-1/22被勾选了。 - 这意味着,
NOT (A.4.3.2-1/22)这个条件的结果是假。 - 由于是
AND逻辑,只要有一项为假,整个表达式就为假。 - “所以,”李工对小王说,“虽然‘Pioneer-X1’满足了前面的频段和模式要求,但因为它支持了那个特殊功能,导致这个C008条件不满足。因此,这个测试用例对‘Pioneer-X1’是不适用的(N/A)。这很可能是因为有另一个专门的测试用例,比如条件为
C007的,是为测试那个特殊功能而准备的。”
通过这两个例子,李工和小王彻底掌握了如何解读Table 4.0-1中的这些C代码。它们是整个适用性判断的第一道大门,也是最重要的一道。
3. 第二、三、四步:频段、配置与子测试的选择
在确定一个测试“需要做”之后,接下来的问题就是“怎么做”。Table 4.0-2, 4.0-3, 4.0-4正是回答这些问题的“执行细则”。
3.1 Table 4.0-2: Tested Bands Selection Criteria (D-Codes)
当李工确定一个测试用例适用后,他需要看适用性表格中的“Tested Bands/CA/DC Configurations / Subtest Selection”列。这一列的内容通常就是D-、E-或F-代码。
假设某个测试用例的该列写着D001。
Table 4.0-2: Tested Bands Selection Criteria
Code Tested Bands Selection Criteria Comment D001 A.4.3.1-1 OR A.4.3.1-2 All supported FDD or TDD FR1 bands
深度解析与场景串联:
- 含义:
D001的规则是A.4.3.1-1(支持的FDD FR1频段)或A.4.3.1-2(支持的TDD FR1频段),注释为“所有支持的FDD或TDD FR1频段”。 - 李工的执行: “Pioneer-X1”的ICS里声明支持n41和n78两个FR1频段。那么,对于这个测试用例,李工必须在n41上完整地测一遍,然后再在n78上完整地测一遍。如果UE支持10个频段,理论上就要测10遍(实际认证中会有抽样规则,但规范的原始要求是全部测试)。
3.2 Table 4.0-3: Tested CA/DC Configuration Selection Criteria (E-Codes)
对于一个载波聚合测试,假设其配置选择列写着E001。
Table 4.0-3: Tested CA/DC Configuration Selection Criteria
Code Tested CA/DC Configuration Selection Criteria Comment E001 DL_2CC(A.4.3.2A.2.1-3) AND A.4.3.2B.2.0-1/1 AND NOT UL(A.4.3.2A.2.1-2) All supported intra-band contiguous CA Configurations with 2 carriers in DL but no CA in UL
深度解析与场景串联:
- 含义:
E001的规则比较复杂,它通过引用ICS表格,筛选出“所有支持的下行带内连续2载波聚合,且上行没有CA”的配置。 - 李工的执行: 李工去查“Pioneer-X1”的ICS中关于CA的表格。他发现,手机支持
CA_n41C,这正是一个下行带内连续2CC的CA组合,且其上行只有一个载波。于是,李工就需要在测试仪表上配置CA_n41C这个组合,来执行该测试。如果手机还支持CA_n78C,那么理论上也需要对这个组合进行测试。
3.3 Table 4.0-4: Subtest Selection Criteria (F-Codes)
对于一个RRM或性能测试,假设其子测试选择列写着F001。
Table 4.0-4: Subtest Selection Criteria for performance and RRM test cases
Code Tested Bands Selection Criteria Comment F001 A.4.3.2-1/9 UEs supporting CSI-RS based PRACH
深度解析与场景串联:
- 含义: 某个RRM测试可能包含两种随机接入方式的场景:基于SSB的和基于CSI-RS的。
F001的规则是A.4.3.2-1/9,即“UE支持基于CSI-RS的PRACH”。 - 李工的执行: 李工查看“Pioneer-X1”的ICS,发现该功能被支持。这意味着,在执行这个RRM测试时,他必须选择并执行那个基于CSI-RS的子测试场景(Subtest)。如果不支持,则可能需要执行另一个子测试,或者该测试整体不适用。
4. 适用性表格的“阅读指南”:理解每一列的含义
在掌握了C/D/E/F代码后,李工最后带着小王,学习了如何阅读一张完整的适用性表格。规范的4.0节之后,有一段说明文字,解释了后续表格中每一列的含义。
李工将其总结为一个清单:
- Clause: 该测试用例在源规范(如TS 38.521-1)中的章节号。—— “这本书在哪一章?”
- TC Title: 测试用例的标题。—— “这一章的标题是什么?”
- Release: 该测试用例最早被引入的3GPP版本。—— “这本书是哪个版本出版的?”
- Applicability - Condition:
C代码,指向Table 4.0-1中的布尔表达式。—— “什么样的人需要读这本书?” - Applicability - Comment: 对适用性条件的简单文字描述。—— “用大白话解释一下什么样的人需要读。”
- Tested Bands / CA/DC Configurations / Subtest Selection:
D/E/F代码,指向对应的选择标准表。—— “如果需要读,具体读哪个版本/章节/语言?” - Branch: PC(Power Class)分支,如PC1, PC2, PC3。对于不同功率等级的UE,测试细节可能不同。—— “读者是成人还是儿童?给他们匹配不同难度的版本。”
- Additional Information: 额外信息,如“若执行了某某测试,则此测试可跳过”等。—— “有没有什么特殊说明?”
通过这份清单,小王感觉豁然开朗,一张看似密不透风的巨大表格,其内在的结构和逻辑已经了然于胸。
总结:从规则到实践的桥梁
4.0节“测试用例条件与选择标准”,是TS 38.522规范的灵魂所在。它通过一套严谨的代码化和表格化的体系,将高度抽象的“适用性”概念,转化为了可执行、可判决、无歧义的工程指令。
对于李工来说,掌握了4.0节,就意味着他拿到了完全解码整本地图的钥匙。他现在不仅知道地图覆盖的范围(Scope),也认识了地图上的所有标记(Definitions),更重要的是,他学会了如何解读地图的“图例”(4.0节),能够将任何一条路线(测试用例)的导航指令(适用性规则)转化为具体的行动方案。
至此,所有的“理论学习”已经完成。在下一篇文章中,我们将跟随李工,正式进入“实战演练”,打开第四章的第一张主表——Table 4.1.1-1,开始为“Pioneer-X1”筛选其必须完成的第一个任务:FR1独立组网(SA)模式下的射频一致性测试。
FAQ 环节
Q1:为什么不直接在适用性表格里写完整的布尔表达式,而要用Cxxxx代码来索引?
A1:这是为了规范的模块化和复用性。很多测试用例的适用条件是完全相同的,比如,所有基础的n78 SA测试,其适用条件都是“UE支持n78且支持SA”。通过定义一个Cxxxx代码来代表这个条件,就可以在所有这些测试用例后面简单地标注这个代码,而无需重复书写冗长的表达式。当需要修改这个通用条件时,只需修改Table 4.0-1中该代码的定义即可,所有引用它的地方都会自动生效,大大提高了规范的可维护性。
Q2:如果一个测试用例的Applicability - Condition(C代码)判断为适用(R),但Tested Bands(D代码)算出来对于我的UE是一个空集,这个测试还需要做吗?
A2:不需要。这种情况在规范的后续说明中有定义:“If the set is empty, the test is considered as not applicable.” 这意味着,即使UE的功能满足了测试的触发条件,但如果它恰好没有任何一个频段或配置,可以用来承载这个测试的执行,那么该测试最终还是不适用。例如,某个测试只针对FDD频段,而你的UE只支持TDD频段。
Q3:我看到Table 4.0-1非常长,有几百个C-conditions,我需要全部记住吗?
A3:完全不需要。实际工作中,没有人会去记这些代码。正确的使用方法是把它当成一个“函数库”或“字典”来查阅。当你遇到一个Cxxxx代码时,回到Table 4.0-1查找它的定义即可。经验丰富的工程师会熟悉一些最常用的代码,比如用于区分SA/NSA、FR1/FR2的基础条件,但这来自于长期的实践,而非刻意记忆。
Q4:这些A.x.y-z/w的ICS条目编号是固定的吗?我如何快速查到它的含义?
A4:是的,这些编号在特定版本的ICS规范(TS 38.508-2)中是固定的。最权威和快速的查询方法就是打开对应版本的TS 38.508-2规范,找到附录A中的表格,根据编号就能找到其确切含义。在实际工作中,测试机构通常会把这些规则做到测试管理软件中,工程师只需导入ICS文件,软件就能自动完成匹配和筛选。
Q5:Branch列中的PC1, PC2, PC3代表什么?为什么它很重要?
A5:PC代表Power Class(功率等级)。3GPP为不同应用场景定义了不同的UE功率等级。例如,PC3是手持终端(如手机)最常见的功率等级(通常为23dBm);PC2功率更高(通常为26dBm),可能用于固定无线接入(FWA)的CPE设备;PC1则功率最高。因为不同的功率等级对应不同的发射要求(如ACLR、杂散等限值可能不同),所以测试时必须根据UE的功率等级,选择正确的Branch,并使用该Branch对应的测试限值进行判决。