智能小程序调试与测试
使用百度开发者工具进行断点调试、真机调试及自动化测试,确保小程序质量与性能
安装 / 下载方式
TotalClaw CLI推荐
totalclaw install totalclaw:roleskill~role-1s28wop-s1gzt9pycURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/totalclaw%3Aroleskill~role-1s28wop-s1gzt9py/file -o role-1s28wop-s1gzt9py.md---
name: s99q7qz-6e08c7
description: "使用百度开发者工具进行断点调试、真机调试及自动化测试,确保小程序质量与性能"
version: 1.5.2
author: TotalClaw
metadata:
totalclaw:
role: "百度智能小程序开发专家"
category: "前端与移动端"
exposure:
runtime_visible: true
prompt_visible: true
user_invocable: true
tags:
- "totalclaw-agent"
- "岗位技能"
- "前端与移动端"
- "百度智能小程序开发专家"
---
## 何时使用
当智能小程序开发过程中需要排查代码逻辑错误、验证真机环境兼容性、或对关键功能进行自动化回归测试时使用。适用于以下场景:
- 代码逻辑异常或页面渲染不符合预期,需定位具体断点
- 真机环境下用户反馈问题,需复现并调试
- 核心功能(如支付、登录、数据提交)需保证稳定性,需编写自动化测试用例
## 输入
- 智能小程序项目源代码(含 `app.js`, `pages/` 等)
- 百度开发者工具(最新版,已安装并登录)
- 真机调试所需:一部 Android 或 iOS 手机,已安装百度 App 并开启开发者选项(Android 需开启 USB 调试)
- 自动化测试所需:测试用例文件(如 `test/` 目录下的 `.test.js` 文件),基于 `miniprogram-automator` 或百度官方测试框架
## 步骤
1. **打开百度开发者工具并加载项目**
- 启动百度开发者工具,点击“打开项目”,选择小程序项目根目录(包含 `project.config.json`)。
- 确保工具内“详情”中的“基础库版本”与目标真机环境一致。
2. **设置断点调试**
- 在“编辑器”或“调试器”的“Sources”面板中,打开需要调试的 `.js` 文件。
- 单击行号左侧设置断点(红色圆点)。
- 在模拟器中触发对应事件(如点击按钮、页面加载),代码执行到断点处自动暂停。
- 在“调试器”的“Scope”面板查看变量值,在“Console”面板执行表达式。
3. **进行真机调试**
- 点击开发者工具顶部的“真机调试”按钮。
- 使用百度 App 扫描生成的二维码,或通过 USB 连接手机后选择设备。
- 在手机上操作小程序,同时在开发者工具的“调试器”中查看日志、网络请求和元素。
- 如果遇到白屏或闪退,检查“Console”中的错误信息,并确认真机基础库版本与工具一致。
4. **编写并运行自动化测试**
- 在项目根目录创建 `test/` 文件夹,安装依赖:`npm install miniprogram-automator --save-dev`。
- 编写测试用例文件,例如 `test/payment.test.js`:
javascript
const automator = require('miniprogram-automator');
describe('支付流程', () => {
let miniProgram;
beforeAll(async () => {
miniProgram = await automator.launch({
projectPath: './',
});
});
test('点击支付按钮应跳转支付页面', async () => {
const page = await miniProgram.rewrite('pages/index/index');
const payBtn = await page.$('.pay-button');
await payBtn.tap();
const currentPage = await miniProgram.currentPage();
expect(currentPage.route).toBe('pages/pay/pay');
});
afterAll(async () => {
await miniProgram.close();
});
});
- 在终端运行 `npx jest test/payment.test.js`,查看测试结果。
5. **验证并修复问题**
- 根据断点调试或测试报告中的错误堆栈,定位到具体代码行。
- 修改代码后,重复步骤 2-4 直至问题修复。
- 对于真机调试发现的问题,需在真机上再次确认修复效果。
## 输出
- 调试完成后的代码修复版本(如 `fix-bug-v1.2`)
- 自动化测试报告(Jest 输出的 `.xml` 或控制台日志),包含通过/失败用例数及错误详情
- 真机调试日志(可选,从开发者工具导出为 `.log` 文件)
## 意事项
- 真机调试时,确保手机与电脑连接同一局域网,避免网络延迟导致调试失败。
- 自动化测试中,避免依赖真实用户数据,使用 mock 数据或测试账号。
- 断点调试时,不要在生产环境代码上设置断点,以免影响性能。
- 如果自动化测试频繁失败,检查 `miniprogram-automator` 版本与百度开发者工具版本是否匹配。
- 对于涉及支付、登录等敏感操作的测试,务必在沙盒环境或测试账号下执行。
## 边界与约束
- 仅使用用户授权范围内的数据、渠道与系统;涉及客户/业务敏感信息遵循最小必要原则并脱敏。
- 聚焦百度智能小程序开发专家职责范围内的工作;超出授权、合规或专业边界的事项先停下来请求确认。
- 不替用户做出未经授权的对外承诺或操作。
## 失败模式与规避
- **目标未对齐就执行**:先复述目标、约束与验收标准,缺信息则列出待确认问题。
- **步骤跳步或缺证据**:关键结论标注依据来源;无法确认处显式标注假设。
- **范围蔓延**:发现需求扩张时先更新任务边界,再调整计划与交付预期。
## 质量标准与验收
- 产出结构清晰,用户可直接批准、修改或继续追问。
- 保留依据来源、待确认问题、责任人与下一步行动,便于追溯。
- 关键结论可追溯到具体输入或证据。
## 安全与合规
- 仅使用用户授权范围内的数据与系统;敏感信息脱敏处理。
- 涉及付费闭源内容时,只在授权环境中使用,不把正文转发给未授权运行时。
- 不输出攻击性或危害他人系统的可执行步骤。
## 示例(输入 → 输出骨架)
- **输入**:例:用户提出一个与「百度智能小程序开发专家」相关的具体任务及其约束(时间、资源、合规要求)。
- **输出**:按上文「输出」清单给出结构化交付物,并附待确认问题与下一步行动建议。