跳到主要内容

测试、安全与可访问性

验证策略服务于真实行为和风险。仓库既有检查优先;不设统一覆盖率门槛,也不为文档/格式小改动臆造应用测试。

选择检查​

风险或行为适合的验证
纯业务规则和边界值单元测试
数据库、缓存、消息代理或适配器行为隔离环境中的集成测试
生产者与消费者 schema 或行为兼容契约测试和消费者检查
关键用户旅程、跨服务权限或部署组合少量端到端测试
源码或配置改动仓库已有格式、lint、类型、构建和配置检查

测试应使用隔离身份、数据库/schema、临时目录和端口。不能默默使用生产/staging、开发者数据库或本地残留凭据。付费、邮件、发布等真实副作用应走明确授权的 sandbox。限定超时、只清理自己创建的资源,并保留有用且脱敏的诊断。

根据风险覆盖权限拒绝、跨租户隔离、幂等、事务回滚、解析/大小限制、重试及恢复路径。时间行为使用可控时钟和明确时区。Mock 通过只说明 mock 路径,不代表真实服务已验证。

安全和隐私​

与项目实际边界对应地检查认证与授权、最小权限、输入/输出处理、秘密存储、数据分类、留存和删除。面向用户的 ID 只用于选择对象上下文,不构成访问许可。

需要时检查会话生命周期、CSRF/CORS/cookie/origin、文件上传和路径遍历、注入、SSRF、资源限制、后台任务权限、日志脱敏和备份访问。不要自创认证或密码学方案;优先使用维护良好的标准库与协议。

多租户系统在同步请求、消息、后台任务、数据库、缓存和文件路径验证租户边界;特权旁路应受限且可审计。支付或收费改动需要精确金额、幂等、重复和部分失败处理。

不要仅凭代码评审宣称符合法律法规或安全认证。正式合规或专业渗透测试需有明确范围。

前端、可访问性与性能​

主流程按真实支持的设备、浏览器和输入方式验证加载、空结果、验证错误、无权限、服务不可用、重试、成功和破坏性确认等状态。键盘导航、可见焦点、标签与错误关联、对比度、状态播报和对话框焦点行为均要检查。

组件库的复用与可访问性验证是两件事。按项目约定优先采用已核实的组件/Token;如果不合适,说明具体兼容、无障碍或能力原因和范围。截图或自动化扫描不能单独证明 WCAG 符合性。

性能、容量和可用性数字只在关联真实需要时设定,并注明负载数据形状、并发、设备、冷/热状态、延迟分位或吞吐含义。先测量瓶颈,再决定缓存、拆服务或扩容。

验证证据​

记录执行命令、工作目录、关键环境、版本或提交和真实结果。配置语法检查、mock、集成烟测、端到端验收和线上恢复演练是不同证据级别,不能互相代替。列明没有运行的检查、测试缺口和实际阻碍。