内部工具

测试用例生成

上传需求文档或原型目录,自动生成测试用例 JSON 和 XMind。

进入工具

年终质量度量:缺陷、自动化和线上告警

发表评论 509 浏览量

年终质量度量:缺陷、自动化和线上告警

2025年12月记录,分类「测试工具」。这篇按当时的测试现场整理,重点放在目标、动作和可复用的检查点。

度量目的

质量度量不是为了年底汇报好看,而是找出下一年要重点改进的模块和流程。

这类问题如果只写结论,过一段时间就很难复用,所以我把判断依据也留了下来。

指标选择

  • 缺陷按模块、严重级别、发现阶段、逃逸原因统计。
  • 自动化看有效覆盖和失败定位,不只看用例数量。
  • 线上告警和用户反馈要回流到测试策略。
缺陷逃逸率 = 线上缺陷数 / 总缺陷数
自动化有效率 = 有稳定执行记录的用例 / 自动化用例总数

数据口径

  • 指标口径前后一致。
  • 每个高风险模块有

阅读全文

API网关限流测试:配额、突刺和降级

发表评论 627 浏览量

API网关限流测试:配额、突刺和降级

2025年11月记录,分类「性能测试」。这里不追求大而全,主要记录一个测试点从发现到落地的过程。

限流目标

网关限流测试要确认两个问题:该拦的流量能拦住,正常用户不会被误伤。

整理时我特意把输入、动作、观察点和风险拆开,方便后面补用例。

测试场景

  • 分别验证单用户、单 IP、单租户和全局配额。
  • 用短时间突刺请求观察限流触发点。
  • 限流后检查错误码、响应文案和降级策略。
seq 1 200 | xargs -n1 -P50 -I{} curl -s -o /dev/null -w '%{http_code}\n' https://api.

阅读全文

Prompt版本回归:把提示词也当代码管理

发表评论 821 浏览量

Prompt版本回归:把提示词也当代码管理

2025年10月记录,分类「AI测试」。这篇更像工作笔记,记录的是一次问题拆解和复用清单。

为什么管版本

Prompt 改一个词,模型输出可能就变。把提示词当代码管理,至少要有版本、评审、回归和回滚。

我当时想确认的不是工具能不能跑,而是这个点能不能稳定地变成测试资产。

变更记录

  • 每次修改记录变更原因和影响范围。
  • 用固定样本集对比旧 prompt 和新 prompt。
  • 上线后观察失败样本和人工反馈。
prompt版本: refund-v6
变更: 增加拒答边界
回归集: 120条客服问答 + 30条注入样本

回归集

  • 提示词版本能和线上问

阅读全文

MySQL备份恢复演练:测试环境也要会救火

发表评论 718 浏览量

MySQL备份恢复演练:测试环境也要会救火

2025年9月记录,分类「服务器运维」。内容按测试执行视角整理,尽量把背景、操作和验收口径讲清楚。

为什么演练

备份文件存在不代表能恢复。测试环境也应该做恢复演练,尤其是字符集、表数量、关键数据这些容易被忽略。

对测试来说,最后要落到可复现、可验证、可交接,文章也是按这个思路写的。

备份动作

  • 备份前记录数据库名、字符集、表数量和文件大小。
  • 恢复到临时库,避免直接覆盖当前环境。
  • 恢复后抽查文章、用户、权限、配置等关键表。
mysqldump --default-character-set=utf8mb4 djangoblog > back

阅读全文

Celery异步任务测试:从状态轮询到幂等校验

发表评论 637 浏览量

Celery异步任务测试:从状态轮询到幂等校验

2025年8月记录,分类「接口测试」。这是一篇偏实战的记录,保留了当时的判断过程和后续沉淀。

异步难点

异步任务不能只看接口返回已提交。真正要验证的是任务入队、执行、失败重试、状态回写和重复提交。

记录这篇的目的,是让下次遇到同类问题时少走一轮弯路。

测试路径

  • 提交任务后轮询任务状态或查询任务表。
  • 模拟失败重试,确认不会重复扣减或重复发送。
  • 检查任务日志、消息队列和业务最终状态。
result = app.send_task('tasks.sync_order', args=[order_id])
assert wait_

阅读全文

移动端抓包证书问题排查

发表评论 902 浏览量

移动端抓包证书问题排查

2025年7月记录,分类「移动端逆向」。这篇按当时的测试现场整理,重点放在目标、动作和可复用的检查点。

抓包失败现象

移动端抓包失败不一定是工具问题,可能是证书未信任、代理没生效、系统版本限制、应用做了证书校验。

我更关注它在真实提测流程里怎么落地,而不是单独演示一个命令或脚本。

排查顺序

  • 先确认手机代理、电脑 IP、端口和证书安装。
  • 区分系统浏览器能抓到和 App 抓不到两种情况。
  • 只在授权测试包里验证证书校验相关问题。
手机代理 -> 电脑IP:端口
系统证书信任 -> 浏览器验证
App请求 -> 判断是否证书校验失败

记录项

  • 请求

阅读全文

Web逆向:Source Map和接口签名的测试排查

发表评论 1124 浏览量

Web逆向:Source Map和接口签名的测试排查

2025年6月记录,分类「Web逆向」。这里不追求大而全,主要记录一个测试点从发现到落地的过程。

授权前提

Web 侧排查接口签名问题时,Source Map 可以帮助理解前端参数拼装逻辑,但前提是只在授权项目里做分析。

这类问题如果只写结论,过一段时间就很难复用,所以我把判断依据也留了下来。

排查路径

  • 先确认线上是否误暴露 Source Map。
  • 从请求参数反查签名生成位置。
  • 把时间戳、随机数、版本号差异转成测试用例。
检查项:
- 生产包是否暴露 .map
- 签名逻辑是否泄露敏感常量
- 构建配置是否关闭 sourcemap

阅读全文

供应链安全测试:SBOM、镜像扫描和依赖升级

发表评论 1179 浏览量

供应链安全测试:SBOM、镜像扫描和依赖升级

2025年5月记录,分类「安全测试」。这篇更像工作笔记,记录的是一次问题拆解和复用清单。

检查范围

供应链安全不是扫描一下就结束。测试侧要关注依赖来源、漏洞等级、是否可利用、升级后兼容性。

整理时我特意把输入、动作、观察点和风险拆开,方便后面补用例。

工具输出

  • 生成 SBOM,明确应用依赖和镜像层。
  • 扫描高危漏洞并确认运行时是否受影响。
  • 依赖升级后跑接口、启动和核心业务回归。
syft packages docker:app:latest -o cyclonedx-json > sbom.json
grype sbom:sbom.js

阅读全文

性能测试容量模型:别只盯TPS

发表评论 986 浏览量

性能测试容量模型:别只盯TPS

2025年4月记录,分类「性能测试」。内容按测试执行视角整理,尽量把背景、操作和验收口径讲清楚。

容量从哪来

容量模型要从业务量推出来,而不是先定一个好看的 TPS。用户数、峰值系数、操作占比、数据量都会影响结论。

我当时想确认的不是工具能不能跑,而是这个点能不能稳定地变成测试资产。

模型参数

  • 估算日活、峰值小时、核心操作比例。
  • 把读写比例、历史数据量、缓存命中率写进模型。
  • 用压测验证模型假设是否成立。
峰值QPS = 日订单量 * 峰值系数 / 峰值秒数
目标容量 = 峰值QPS * 安全系数1.5

压测验证

  • 容量建议能解释支撑多少业务量。
  • 瓶颈

阅读全文

Testcontainers隔离依赖服务的实践

发表评论 1044 浏览量

Testcontainers隔离依赖服务的实践

2025年3月记录,分类「持续集成」。这是一篇偏实战的记录,保留了当时的判断过程和后续沉淀。

为什么隔离

接口测试依赖真实 MySQL、Redis、MQ 时,Testcontainers 可以让每次测试拥有独立依赖,减少共享环境带来的偶现失败。

对测试来说,最后要落到可复现、可验证、可交接,文章也是按这个思路写的。

用在哪

  • 为集成测试启动独立数据库和缓存容器。
  • 测试开始前执行 schema 和基础数据初始化。
  • 测试结束自动销毁容器,避免污染环境。
with MySqlContainer('mysql:8.0') as my

阅读全文