李银行
测试开发
·05-12 11:04
手机智能助手大模型测试岗位画像(大模型测试经验、AI Coding、手机App测试、Python),整理了一套面试题,涵盖这四个关键领域和综合场景题。题目附带考察点和简要回答要点,可直接用于面试或备考。 --- 一、大模型测试经验 1. 你如何理解大模型测试与传统软件测试的本质区别? · 考察点:对非确定性、概率性输出的测试思路 · 要点:输出不稳定、无法用精确断言;需要评估“好”而非“对”;依赖prompt工程、评分体系、人工/自动化评估;关注幻觉、安全、公平性等新质量维度。 2. 你用过哪些评价指标来评估大模型效果?请举例说明适用场景。 · 考察点:评估方法论 · 要点:BLEU/ROUGE(文本摘要)、困惑度(模型本身)、BertScore、人工打分(有用性、安全性),以及针对性指标如事实一致性、幻觉率。还会搭建评测集,包含正向、对抗、边界用例。 3. 分享一个你挖掘到大模型严重Bad Case的经历,如何复现、跟进? · 考察点:问题发现与闭环能力 · 要点:描述场景(如某个prompt让模型输出违规内容),精确记录prompt、参数(temp, top_p)、模型版本;使用固定seed复现;提交到badcase管理平台,推动模型调整或安全层拦截,并加入回归集。 4. 如何进行大模型安全性测试?请具体谈谈Prompt注入的测试方法。 · 考察点:安全攻防经验 · 要点:直接注入(忽略前面指令)、间接注入(通过外部文档)、越狱(DAN等模板)、目标劫持。测试方会构建注入语料库,用自动化扫描,并验证应用层防御(输入过滤、输出审核)。 5. 模型频繁迭代,你如何设计回归测试保障质量? · 考察点:持续测试能力 · 要点:维护一个核心评测集(覆盖功能、安全、性能、多轮对话一致性),每次发版自动跑评测得分的Diff报告;设定阈值(如安全性下降>1%告警);并用A/B测试观察真实指标。 --- 二、AI Coding(AI辅助编程) 6. 你常使用的AI Coding工具有哪些?在测试工作中怎样具体应用? · 考察点:工具熟练度和提效思维 · 要点:GitHub Copilot / Cursor / 通义灵码等;举例:用注释生成单元测试、生成数据驱动参数组合、快速编写调用API的脚本、解释复杂代码、生成测试报告模板。强调自己会审慎修改,而非全盘接受。 7. 请描述一个你用AI辅助生成自动化测试脚本的场景,你做了哪些关键修改? · 考察点:工程化能力 · 要点:如让Copilot生成“调用大模型API的Python函数”,初始代码无重试机制、未处理异常、断言太过死板。自己添加超时重试、状态码非200的日志、用模糊匹配(检查关键词存在)替代相等断言,并参数化环境变量。 8. 使用AI生成测试代码有哪些常见陷阱?你如何保证代码质量和可维护性? · 考察点:代码审查与安全意识 · 要点:陷阱:引入幻觉API、变量命名混乱、无错误处理、硬编码敏感信息。对策:所有AI生成的代码必须review;统一走代码规范检查(pylint, black);敏感信息用配置或环境变量;补充注释,保证可读性。 --- 三、手机App测试 9. 针对一款集成大模型对话能力的App,你会设计哪些测试场景? · 考察点:移动端+AI的融合测试设计 · 要点:功能(发送消息、流式输出、停止生成、历史记录、多模态输入如图片、语音)、异常(断网重连、后台切换、杀进程后恢复对话)、性能(生成时CPU/内存/流量、耗电)、兼容(不同机型、系统版本)、权限、安全(剪贴板敏感信息泄露)。 10. 手机端如何测试大模型API的响应体验和性能?用过哪些工具? · 考察点:移动端性能监控 · 要点:关注首token延迟、生成速度(token/s)。用Charles/Proxyman抓包分析API时序;利用PerfDog/SoloPi监控App渲染帧率、内存、CPU;用Fiddler模拟弱网;计算端到端可感知延迟,设定P95指标。 11. 你用过Appium(或其他框架)做移动端自动化吗?元素定位不稳定怎么处理? · 考察点:实际自动化经验 · 要点:使用显式等待、相对定位、XPath轴;用accessibility id代替坐标;对动态变化的会话列表用recyclerview或iOS XCUITest的滚动查找;封装智能重试和异常截图,加入到allure报告。 12. 如何测试大模型输出在手机不同屏幕尺寸、系统版本下的UI表现? · 考察点:兼容性测试 · 要点:除了基础布局,重点检查长文本、多语言(中英混排)、特殊字符是否截断错乱;深色模式适配;字体缩放;Markdown渲染一致。用云测平台(如WeTest、Firebase Test Lab)做较大规模遍历。 --- 四、Python 测试开发 13. 请用Python写一个脚本:调用一个生成式API,验证返回内容包含预期关键词且响应时间小于5秒。 · 考察点:requests基础、断言设计 · 要点: ```python import requests, time def test_generation(): start = time.time() resp = requests.post("https://api.example.com/generate", json={"prompt": "介绍AI", "max_tokens": 100}, timeout=10) assert resp.status_code == 200 elapsed = time.time() - start assert elapsed < 5, f"Too slow: {elapsed}s" data = resp.json() content = data["choices"][0]["text"] assert "智能" in content or "学习" in content, "Missing keywords" ``` · 还要关注异常处理、日志、参数化配置。 14. 如何使用pytest实现数据驱动测试,覆盖多种prompt场景? · 考察点:pytest parametrize、数据管理 · 要点:用@pytest.mark.parametrize("prompt,expected_keywords", [...]);也常用json/csv文件通过pytest_generate_tests动态注入。强调每个用例独立,且评估合理性而非简单相等。 15. 如果你要为上述移动端大模型应用搭建一个自动化测试框架,架构如何设计? · 考察点:框架设计思路 · 要点:分层:UI层(Appium/Poco)、API层(requests)、评价层(调用模型评估或规则);数据驱动层管理prompt和预期规则;工具层封装日志、报告(allure)、失败自动重跑;CI集成Jenkins/GitLab CI,并触发回归评测集。 --- 五、综合场景题 16. 当App上用户反馈“大模型回答变蠢了”,作为测试,你怎么排查定位? · 考察点:整体质量意识与协作 · 要点:先收集信息(提问内容、时间、版本),用相同prompt和参数在多环境(测试/线上)复现;检查是否因为模型版本更新、服务降级、prompt被app端修改;拉取服务端日志看返回内容;对比旧版评测集得分;最后确定是模型问题、策略问题还是产品设计变更,并推动修复。 17. 你认为一个“AI Native”的应用,测试面临的最大挑战是什么? · 考察点:测试理念的前瞻性 · 要点:质量标准的模糊性、评测维护成本高、安全伦理法律风险、多模态链路的复杂性、模型行为难以完全预测。因此需要构建“评测即代码”的工程化体系,深度融合模型评估和传统软件测试。
0个评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
下载 APP