

APP 测试里,崩溃问题最容易变成“信息不完整”的缺陷单:有一张截图,有一句“打开页面闪退”,但缺少机型、系统版本、App 版本、复现路径、堆栈、日志和影响范围。研发拿到以后还要反问,QA 再补录屏、补日志,来回消耗时间。
这篇讲的是一个更现实的小流程:借助 Android Studio 里的 App Quality Insights 和 Gemini,让 AI 先把 crash report、堆栈、源码上下文整理成原因摘要和下一步建议,再由 QA 补齐复现路径、影响范围和回归点。
适合的 QA 工作类型:APP 测试、Android 崩溃分析、缺陷分诊、版本回归。
AI 直接参与的动作:分析崩溃报告,生成 crash summary,指出可能的代码位置和下一步建议,辅助 QA 写缺陷证据。
Google 官方文档明确写到,可以在 Android Studio 中使用 Gemini 分析 App Quality Insights crash reports,生成 insights、crash summary,并在可能时推荐下一步,包括示例代码和相关文档链接。文档示例还展示了 Gemini 能定位 crash 起源文件、展示相关代码片段,并解释为什么发生崩溃。

假设今天要测一个 Android 版本,路径是:登录 -> 首页 -> 会员页 -> 点击权益卡片。某台 Android 14 设备上点击后闪退,另一台 Android 12 正常。
原始做法通常是:
这里真正耗时的不是“发现崩溃”,而是把崩溃变成研发能行动的证据。
Gemini + AQI 的作用,就是把第 4、5、6 步先压缩成一个可审查草稿。

不要只复制 AI 的结论。更稳的缺陷单应该包含四块:
AI 的输出只放在第 4 块,不能覆盖前 3 块。因为 QA 的价值在于确认“用户怎么触发、影响范围多大、版本是否阻断”,而不是把堆栈翻译成自然语言。

前提条件是你本来就在用 Android Studio,并且项目能看到 App Quality Insights crash reports。没有这部分上下文,就不要强行写成“全自动崩溃分析”。
最小验证可以这样做:
如果你还没有线上 crash report,可以先用测试环境或内测包复现一个非敏感 crash,再走一遍流程。注意不要把用户隐私、内部 token、账号信息粘进公开工具或截图里。
第一,少在长堆栈里迷路。
崩溃堆栈经常夹杂系统调用、框架调用、混淆类名和业务代码。AI 可以先给一个“疑似起点”和解释,让 QA 更快定位要看哪几行。
第二,少写低质量缺陷单。
“点击闪退”不是好缺陷。包含设备、版本、路径、堆栈、AI 摘要、影响面、回归点的缺陷,才更容易被研发快速处理。
第三,少重复问研发“这个归谁”。
如果 AI 摘要能指出相关文件、模块、调用链,QA 可以更快判断该分给客户端、服务端、配置、资源还是第三方 SDK 负责人。当然最终归属仍要人工确认。
第四,少漏回归点。
崩溃修复后不能只验证“不闪退”。还要确认原页面功能可用、异常数据被兜底、弱网/空数据/权限状态不会再次触发。
第一,AI 的原因解释是否和复现路径一致。
如果 AI 说是空指针,但只有某个地区配置会触发,那就要继续查配置和数据源,不要只盯代码。
第二,代码建议是否真的能修复业务问题。
官方文档提到 Gemini 在可能时能建议下一步甚至打开 proposed code changes,但 QA 不应该把“建议修复”写成“确定修复”。这仍然需要研发评审。
第三,是否存在同堆栈不同原因。
移动端崩溃里,同一个栈顶可能由不同入口触发。QA 要保留复现路径和设备差异,不能只按堆栈合并。
第四,是否涉及隐私和权限。
崩溃报告、logcat、录屏可能包含手机号、token、定位、订单号、内部域名。进入缺陷单前要做脱敏。

适合:
不适合:
APP 崩溃归因 Agent 的价值不是“自动修 bug”,而是把崩溃证据整理成 QA 能推进的缺陷资产。
Gemini + App Quality Insights 适合做第一层归因:总结堆栈、指出疑似代码位置、给下一步建议。QA 仍然要负责复现路径、设备差异、影响范围、脱敏和回归点。
如果你的团队现在的崩溃缺陷单还停留在“闪退了,见截图”,这条流程会比空谈 Agent 更容易落地。