指南跳转逻辑条件逻辑问卷测试数据质量

问卷分支逻辑怎么验收?用真值表找出重叠、死路和错筛

先把自然语言需求写成有优先级的布尔规格,再用十张风险身份卡验证页面、终态与导出;同时区分结构性不适用、拒答和程序缺失。

最近更新 2026年9月2日 15 分钟 阅读

一份续订研究在预览时看起来完全正常:产品用户会进入体验题,未使用者会进入原因题。正式回收后,团队却发现“企业版且选择不知道”的人既满足企业分支,又落入默认未使用分支;系统采用先匹配规则,导致其中一条路径永远到不了。页面没有报错,数据也能导出,但两组含义已经混在一起。

分支逻辑正确的标准不是“我点过一次能提交”,而是对每一种有研究意义或高风险的输入,受访者看到预定内容、到达唯一终态,导出得到预定代码。路径图能帮助沟通流程,不能单独证明条件互斥或覆盖完整;多条件问卷必须再有一张真值表和一组带预期结果的测试身份。

逻辑设计从数据需求开始,不从箭头开始

先写最终分析需要区分的群体。假设续订研究只需比较“过去30天使用过新功能”“知道但未使用”“不了解该功能”三组,且三组都要回答总体续订意向。这样可以先得到数据规格:

  • eligible:是否属于目标客户总体;
  • feature_state:used、aware_not_used、unaware、unknown;
  • disposition:consent_decline、screenout、quota_full、complete、partial;
  • asked_q12:体验题是否实际展示,用于区分不适用和无回答;
  • questionnaire_version:逻辑修改前后能否识别。

共同指标应留在各合格分支重新汇合后的公共路径,只有拥有相应经历的人才看诊断题。若使用者与未使用者各自回答完全不同的总体结果题,报告时就不能判断差异来自人群还是题目。字段、分母和缺失规则可以先在调研数据代码本中占位。

显示、路由、校验、终止和计算不是同一种动作

动作用途常见误用
条件显示在当前流程展示一题、选项或说明逐题复制复杂条件,修改一个定义却漏改其他题
路由/跳转把人送入适用模块,之后可以汇合多个规则同时命中,却没有写清优先级
输入校验限制格式、范围或选项数量把不符合业务期待的真实答案当成“非法输入”
终止产生拒绝、筛除、满额等不可继续的终态所有提前结束都记成同一个“未完成”
计算与标记保存资格、分组、随机臂或质量标识只计算屏幕展示值,导出没有稳定原始变量

同一条业务规则可以同时触发标记和路由,但应分别写结果。例如“过去30天未使用”先令 feature_state=aware_not_used,再进入未使用原因模块;不能只写“跳到 Q18”。题号会变,语义变量更稳定。

把口头规则改写成有优先级的规格

案例中有六个输入维度:是否同意、年龄状态、是否为近90天客户、是否为本公司员工、功能认知/使用状态,以及对应角色配额是否已满。简单的资格表达式可以写成:

eligible = consent_yes AND age_18_plus AND customer_90d_yes AND employee_no

但这还不够,因为“不知道”和拒答不是自动等于否,配额也只应在资格成立后检查。建议按以下顺序执行:

  1. 不同意参与:记录 consent_decline,不进入研究题;
  2. 年龄不符合,或项目规定无法确认成年资格:记录具体筛除原因;
  3. 不是近90天客户或属于需排除的员工:记录各自筛除原因;
  4. 资格成立后,检查对应分析格配额;已满则记 quota_full
  5. 配额开放时,按 used、aware_not_used、unaware、unknown 进入互斥模块;
  6. 各模块回到共同结果题,正常提交才记 complete

优先级解决的是“多个条件同时真时先执行谁”。例如员工同时也是客户,必须先完成客户判断再以员工规则筛除,不能因为企业客户配额开放而进入主体。每个终态都应互斥,每个合法输入都应有去向;默认分支只用于明确登记的剩余状态,不能成为掩盖漏条件的垃圾桶。

三值状态比强行二分更安全

现实回答常有“是、否、未知/拒答”,而不是只有真和假。若规则写成“不是是,就当作否”,未作答、加载失败、不知道和明确否认会被合并。设计者应逐题决定:

  • 未知是否仍可回答其他研究问题;
  • 拒答是否影响伦理上的继续资格;
  • 题目未展示时字段应为空、专用不适用码,还是另存展示标记;
  • 返回上一页修改后,先前分支的旧答案是保留、清空还是标记失效。

“未展示”是问卷结构造成的缺失,“展示但跳过”是项目无回答,“不知道”是有效回答状态。三者如果在导出中都变成空白,分析者就无法判断分母,也可能把未使用者错误计为对功能不满意。

一张真值表先暴露规则重叠

同意资格配额功能状态唯一预期路径/终态
不再判断不检查不询问consent_decline
不合格不检查不询问screenout,并保存原因
合格已满不影响quota_full
合格开放used体验模块→共同指标
合格开放aware_not_used采用障碍模块→共同指标
合格开放unaware需求模块→共同指标
合格开放unknown最小公共路径,并保留未知状态

六个维度若各有2到3个取值,未经约束的组合可达数百个。无需把所有不可能组合都手工提交,但必须先排除逻辑上不合法者,再覆盖每个终态、边界和高风险交互。路径图适合看“有没有出口”,真值表适合看“同一输入是否命中两条规则”以及“有没有任何规则都不接的空洞”。

十张身份卡把规格变成可重复测试

卡片关键输入必须验证的断言
T01 拒绝参与consent=否无研究题;终态为 consent_decline;不能返回绕过同意
T02 年龄下界17岁364天screenout_age;主体字段未展示
T03 年龄边界恰好18岁,其余合格允许继续,证明使用的是“≥18”
T04 员工客户近90天客户且为员工screenout_employee,不消耗客户配额
T05 已使用合格、配额开放、used只见体验模块和共同指标,feature_state=used
T06 知道未用合格、aware_not_used不见体验评价;进入障碍模块;asked_q12=0
T07 不了解合格、unaware进入需求模块,不把未知品牌体验当低分
T08 不知道合格、unknown不落入“未使用”;保留 unknown 代码
T09 配额边界最后一个名额与满额后的下一个会话前者进入、后者 quota_full;并发时不超收或错记
T10 返回修改先选 used 并作答,再改为 aware_not_used旧体验答案按既定规则失效,导出不同时声称两种状态

每张卡保存候选版本、设备、测试会话、实际页面、最终状态和导出行。测试失败时修复规则,并重跑受影响卡及其相邻边界。只截一张页面图不足以证明通过,因为页面可能正确、终态或字段却错误。

组合太多时,先按风险覆盖,再做两两组合

NIST 的组合测试研究指出,很多软件故障由少数参数的相互作用触发;覆盖两两取值能发现大量交互问题,但不能保证抓住需要三项或更多条件同时成立的故障。用于问卷时,可以先列出所有因素和值,再采用三层测试:

  1. 每个终态、每条主分支和每个数值/日期边界必须覆盖;
  2. 对普通条件尽量覆盖两两组合,例如语言×设备、客户类型×功能状态;
  3. 对高风险业务规则手工加入三项以上组合,例如“员工×企业客户×满额配额”,不能因为两两覆盖过就省略。

组合测试只是生成输入的方法,预期结果仍必须来自研究和程序规格。若团队连某个组合应该进入哪里都说不清,这是需求缺陷,不是再多点击几次能解决的测试缺口。

自动化规则也要接受目标受访者预测试

美国人口普查局的质量标准 A2要求预测试验证题序和跳转是否逻辑清楚,并保留工具规格、最终测试输入及结果。其问卷测试方法附录进一步指出,跳转很多时,测试样本要足以观察不同路径;自动化问卷还需检查导航和错误纠正。

程序测试能证明“选择 X 后系统去了 Y”,却不能证明受访者知道自己该选 X。例如“是否为活跃客户”若没有观察期,不同人会按登录、付费或主观关系判断。逻辑开发前后都需检查筛选题含义,必要时按认知访谈方法观察目标人群如何理解和作答。

公开问卷规格展示了怎样写清编程说明

Pew Research Center 的2025 NPORS 在线与电话问卷把适用对象、是否必答、跳过后的提示、答案代码、继续或终止条件、终止文案以及是否允许返回写进公开工具。它的价值不在于照抄具体规则,而在于说明可执行问卷不应只有屏幕文案:编程注释也是研究工具的一部分。

自己的规格可采用“ASK IF / SET / GO TO / TERMINATE / EXPORT”五类语句,并为每条规则指向稳定变量。自然语言仍应足够明确,让没有参加设计会议的测试者能根据同一输入独立判断预期结果。

上线监控关注不可能事件,而不只看完成量

通过发布验收和小流量试投后,正式回收仍应按版本监控:

  • 某条预计存在的主路径是否连续为零;
  • 互斥分组是否同时为真,或所有分组都为空;
  • 筛除、满额、拒绝和中断是否被错误合并;
  • 未展示题是否出现答案,已展示关键题是否结构性全空;
  • 特定来源、语言或设备是否全部落入同一异常终态;
  • 路径长度和中断位置是否与试投相比突然改变。

若发现错筛或数据覆盖,应先暂停,保存受影响会话与时间范围,再生成新版本并重跑测试卡。不要直接覆盖线上规则后把前后数据无条件合并;资格、题意或分支改变时,两批答卷可能代表不同测量过程。

在问卷派中配置逻辑前,先把验收包准备好

团队可以在问卷派中按冻结规格配置显示、跳转和结束条件,再通过预览及测试答卷核对不同路径。平台负责执行所配置的规则,研究团队负责证明规则本身完整。复杂度每增加一个条件,都应同时更新真值表、身份卡、代码本和版本摘要。

逻辑达到发布条件时,团队不只能够说“各路径都点通过了”,还应能交出四件东西:互斥且完备的条件表、十张有预期结果的风险身份卡、页面与导出一致的通过证据,以及上线后的不可能事件监控。缺少其中任何一项,漂亮的路径图都还只是设计意图,不是经过验证的问卷系统。

跳转规格与组合测试依据