ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

产品体验测试技术实现:SUS量表分析与可用性指标计算(附Python示例)

产品体验测试技术实现:SUS量表分析与可用性指标计算(附Python示例) 一、概述产品体验测试通过任务完成率、SUS量表、NPS和CES等指标评估产品可用性。本文从技术角度介绍指标计算和统计分析方法。二、任务完成率分析import pandas as pd # 测试记录数据 df pd.read_excel(usability_test.xlsx) # 每个任务的完成率、平均时间、错误率 tasks [ftask_{i} for i in range(1, 7)] results [] for task in tasks: completed df[f{task}_completed] time df[f{task}_time] errors df[f{task}_errors] results.append({ task: task, completion_rate: completed.mean(), avg_time: time.mean(), avg_errors: errors.mean(), status: ✓ if completed.mean() 0.9 else ✗ 需优化 }) task_df pd.DataFrame(results) print(任务完成率分析:) print(task_df.round(3))三、SUS量表计算# SUS: System Usability Scale (10题, 5分李克特量表) # 奇数题: (得分-1), 偶数题: (5-得分), 总分×2.5 sus_cols_odd [fsus_{i} for i in range(1, 10, 2)] # 1,3,5,7,9 sus_cols_even [fsus_{i} for i in range(2, 11, 2)] # 2,4,6,8,10 # 计算每题转换分 for col in sus_cols_odd: df[f{col}_adj] df[col] - 1 for col in sus_cols_even: df[f{col}_adj] 5 - df[col] # SUS总分 转换分之和 × 2.5 (范围0-100) adj_cols [f{c}_adj for c in sus_cols_odd sus_cols_even] df[sus_score] df[adj_cols].sum(axis1) * 2.5 print(fSUS平均分: {df[sus_score].mean():.1f}) print(f标准差: {df[sus_score].std():.1f}) print(f评级: , end) score df[sus_score].mean() if score 80: print(优秀) elif score 70: print(好) elif score 68: print(一般平均线) elif score 60: print(一般偏下) else: print(差)四、NPS计算# NPS 推荐者%(9-10) - 贬损者%(0-6) nps_scores df[nps_rating] # 0-10分 promoters (nps_scores 9).mean() detractors (nps_scores 6).mean() passives ((nps_scores 7) (nps_scores 8)).mean() nps (promoters - detractors) * 100 print(f推荐者: {promoters:.1%}) print(f中立者: {passives:.1%}) print(f贬损者: {detractors:.1%}) print(fNPS: {nps:.0f})五、CES计算与相关性# CES: Customer Effort Score (1-7分, 越低越好) ces df[ces_score].mean() print(fCES平均: {ces:.2f} (7分量表)) # CES与NPS的相关性 from scipy.stats import pearsonr r, p pearsonr(df[ces_score], df[nps_rating]) print(fCES与NPS相关系数: r{r:.3f}, p{p:.4f}) print(CES越高费力→ NPS越低不推荐 if r 0 else CES与NPS正相关异常)六、可用性问题分析# 问题严重度统计 issues pd.read_excel(usability_issues.xlsx) severity_counts issues[severity].value_counts() print(可用性问题统计:) print(severity_counts) # 致命严重问题按任务分布 critical issues[issues[severity].isin([致命, 严重])] print(f\n致命严重问题: {len(critical)}个) print(critical.groupby(task)[severity].count())七、工具推荐工具用途特点91question用户招募满意度问卷筛选问卷、SUS量表模板、NPS题Python (scipy)统计分析SUS计算、相关性检验Hotjar行为记录热力图、会话回放Maze远程可用性测试任务完成率自动统计八、总结体验测试的技术关键点1. 测试用户5-8人任务5-8个2. 任务完成率≥90%SUS≥68分3. SUS计算奇数题(得分-1)偶数题(5-得分)总和×2.54. NPS推荐者%-贬损者%范围[-100, 100]5. CES是NPS的领先指标两者应负相关
返回列表