# 海报功能测试指南 ## 🚀 如何测试修复后的海报功能 ### 1. 启动项目 #### 使用HBuilderX(推荐) 1. 打开HBuilderX 2. 导入项目文件夹 3. 选择"运行" -> "运行到小程序模拟器" -> "微信开发者工具" #### 使用微信开发者工具 1. 打开微信开发者工具 2. 选择"导入项目" 3. 选择项目根目录 4. 项目类型选择"小程序" ### 2. 测试步骤 #### 步骤1:打开控制台 在微信开发者工具中: 1. 点击"调试器"标签 2. 打开"Console"面板 3. 确保能看到日志输出 #### 步骤2:进入房源详情页面 1. 在小程序中导航到房源列表页面 2. 选择任意一个房源,点击进入详情页面 3. 等待房源信息加载完成 #### 步骤3:测试海报生成功能 1. 在房源详情页面,点击底部的"分享"按钮 2. 在弹出的分享面板中,点击"生成海报"选项 3. 观察控制台输出和海报弹窗 ### 3. 预期结果 #### 控制台日志输出 应该看到以下日志(按顺序): ```javascript // 1. 分享按钮点击时 分享数据设置完成: { shareTitle: "房源标题 租金元/月", shareImageUrl: "图片URL或空字符串", posterApiParam: { houseId: xxx, houseTitle: "...", ... } } // 2. ShareSheet组件处理 ShareSheet handlePoster 被调用 posterApiCall 类型: function posterApiCall 函数: ƒ generateHousePoster(params) { ... } posterApiParam: { houseId: xxx, houseTitle: "...", ... } // 3. GoodsPosterPopup组件处理 GoodsPosterPopup onShowPopup 被调用 apiCall 类型: function apiCall 函数: ƒ generateHousePoster(params) { ... } apiParam: { houseId: xxx, houseTitle: "...", ... } platform: undefined 调用 apiCall,参数: { houseId: xxx, ..., channel: undefined } // 4. generateHousePoster函数执行 generateHousePoster 被调用,参数: { houseId: xxx, ..., channel: undefined } 当前房源图片列表: [...] 房源信息: { houseTitle: "...", monthlyRent: xxx, ... } // 5a. 如果有房源图片 第一张图片对象: { url: "图片URL", ... } 提取的图片URL: "图片URL" 使用房源图片作为海报: "图片URL" // 5b. 如果没有房源图片 没有可用的房源图片,生成默认海报 生成默认海报,房源信息: { houseTitle: "...", monthlyRent: xxx, ... } 生成的默认海报URL: "https://dummyimage.com/..." 生成默认海报成功: "https://dummyimage.com/..." // 6. 最终结果 apiCall 调用成功,结果: { data: { imageUrl: "图片URL" } } 海报图片URL设置成功: "图片URL" ``` #### 界面表现 1. **海报弹窗正常显示**:应该看到一个居中的弹窗,包含海报图片 2. **海报图片正常加载**: - 如果房源有图片:显示房源的第一张图片 - 如果房源没有图片:显示包含房源信息的默认海报 3. **保存功能正常**:点击"保存海报图"按钮,应该能正常保存到相册 #### 错误情况处理 如果出现错误,应该看到友好的提示信息,而不是控制台错误: - "海报生成功能异常" - "海报生成失败" ### 4. 常见问题排查 #### 问题1:仍然出现 "app.apiCall is not a function" 错误 **可能原因**: - 缓存问题,需要清除小程序缓存 - 代码修改未生效 **解决方案**: 1. 在微信开发者工具中点击"清缓存" -> "清除数据缓存" 2. 重新编译项目 3. 检查代码修改是否保存 #### 问题2:海报弹窗不显示 **检查控制台日志**: - 确认 `posterApiCall` 类型是 `function` - 确认 `generateHousePoster` 被正确调用 - 查看是否有其他错误信息 #### 问题3:海报图片不显示 **可能原因**: - 图片URL无效 - 网络问题 - 图片格式不支持 **检查方法**: 1. 查看控制台中的图片URL 2. 在浏览器中直接访问图片URL验证是否有效 3. 检查网络连接 #### 问题4:默认海报不生成 **检查控制台日志**: - 确认进入了 `generateTextPoster` 方法 - 查看房源信息是否正确获取 - 检查默认海报URL是否生成 ### 5. 测试用例 #### 测试用例1:有图片的房源 1. 选择一个有图片的房源 2. 执行海报生成流程 3. 验证使用房源图片作为海报 #### 测试用例2:没有图片的房源 1. 选择一个没有图片的房源(或手动清空图片数据) 2. 执行海报生成流程 3. 验证生成默认海报 #### 测试用例3:网络异常情况 1. 断开网络连接 2. 执行海报生成流程 3. 验证错误处理是否正常 ### 6. 性能测试 #### 测试海报生成速度 1. 记录从点击"生成海报"到海报显示的时间 2. 应该在2-3秒内完成 3. 如果超时,检查图片加载和网络情况 #### 测试内存使用 1. 在开发者工具中查看内存使用情况 2. 多次生成海报,确认没有内存泄漏 ### 7. 兼容性测试 #### 不同设备测试 1. 在不同型号的手机上测试 2. 测试不同版本的微信客户端 3. 确保功能在各种环境下都能正常工作 ### 8. 修复验证清单 - [ ] 控制台不再出现 "app.apiCall is not a function" 错误 - [ ] 海报弹窗能正常显示 - [ ] 有图片的房源能正确显示房源图片作为海报 - [ ] 没有图片的房源能生成默认海报 - [ ] 海报保存功能正常 - [ ] 错误情况有友好的提示信息 - [ ] 分享其他功能(复制链接、微信分享等)不受影响 ## 🎯 总结 如果以上测试都通过,说明海报生成功能已经修复成功。如果仍有问题,请提供: 1. 完整的控制台错误信息 2. 具体的操作步骤 3. 出现问题的环境信息(设备型号、微信版本等) 这将帮助进一步诊断和解决问题。