- 日期:2025-02-22
- 企业与岗位:未披露企业|SDET现场实操
- 适用层级:高级
内容说明
本篇为社区对用户分享面经的整理汇编,旨在帮助求职者了解面试考察方向。问题部分力求忠实还原原帖问答脉络;「参考答案 / 复盘思路」为整理方结合工程实践原创补充,仅供交流参考,不代表官方标准答案。
原分享主要记录实操要求或考察方向,下文列出的是任务要点,并非面试官逐字提问。
一、原帖涉及的考核任务/方向(8项)
1. 制定测试计划与测试策略
参考答案 / 复盘思路: 在2.5小时的现场考核里,首先给出范围和风险假设:哪些业务路径最关键、环境和外部依赖是否可用、成功标准是什么。按照“先有一个可运行的最小链路,再逐步覆盖”制定优先级,列出正向、失败和边界样本。策略不应只是列工具名称,还应规定哪些验证放API层、哪些放UI层,以及每层的稳定性和运行成本。如果时间紧张,明确说明暂缓的非关键部分和理由,让面试官看到有意识的工程取舍。
2. 构建带服务Stub能力的API自动化框架
参考答案 / 复盘思路: 先封装统一的API客户端、鉴权和配置,再为核心接口写正确的业务断言,而不只是检查200状态。Stub用于替代不稳定或不可访问的依赖服务,至少覆盖成功响应、超时、错误码、异常结构和延迟等情况。设计Stub时要保证请求匹配条件明确,避免所有请求都得到默认成功响应。最好演示一个故障用例能够稳定失败,再调整Stub返回后恢复通过,以证明测试真正能检测问题。真实服务的契约仍需在集成环境另行验证。
3. 构建Web UI自动化框架
参考答案 / 复盘思路: 先完成一条稳定可运行的UI用例,包括启动浏览器、定位、操作、状态断言与失败截图。页面对象只封装复用程度高的定位器和交互,不要把所有断言隐藏进Page Object以致问题难定位。优先语义定位和自动等待,避免固定sleep及绝对XPath。对E2E测试控制数量,把业务逻辑更多地放在API层验证。现场演示时直接运行测试并展示报告,比只交一个目录结构更有说服力。
4. 使用Postman组织API测试集合
参考答案 / 复盘思路: 在Postman中使用collection按业务组织请求,环境变量管理base URL与账号等非敏感配置,令牌从安全方式注入。每个请求加入关键状态码、响应结构和业务字段断言;通过前置脚本或集合变量串联必要数据,但要避免用例之间形成隐藏依赖。用不同数据准备成功和失败场景,并能通过Postman CLI或Newman在命令行重复运行,输出CI可收集的报告。演示一条实际失败断言是验证集合有效性的简便方法。
5. 处理地理位置相关测试
参考答案 / 复盘思路: 先问清应用是按GPS坐标、IP区域、行政区划还是时区做业务判定。覆盖允许定位、拒绝授权、位置不可用、模拟坐标、经纬度边界、跨时区和精度偏差。对于距离计算要核实单位、舍入规则、球面距离近似和业务容差,不要直接比较浮点数精确相等。测试环境最好可注入确定的虚拟位置,避免现场真实GPS波动影响结果。如果涉及地理围栏,还需要测越界瞬间、位置刷新延迟和权限撤销后的状态。
6. 搭建CI/CD流水线
参考答案 / 复盘思路: 现场先做到一条命令可以从干净环境安装依赖并执行核心测试,失败时返回非零退出码;然后在CI中配置缓存、环境变量、安全凭据和测试报告归档。把快速的静态检查/API冒烟放在PR环节,耗时较长的UI或性能检查安排在适当阶段。失败要区分环境故障与产品缺陷,可上传截图、Trace和日志,但不要用无条件重试掩盖不稳定测试。重点展示流水线有可复现运行证据,而不只是画一张流程图。
7. 管理不同环境的测试数据
参考答案 / 复盘思路: 测试数据应分环境、分租户、分用例隔离:用种子数据或工厂在执行前创建需要的记录,结束后清理或使用可重复重置的环境。敏感信息用测试账号与脱敏数据,凭据放密钥管理系统而不是仓库。并行执行时给每次运行独立的前缀或ID,避免互相污染。还需区分固定回归样本与随机生成样本:前者用于稳定比较,后者用来发现边界缺陷,随机种子应保留以便重现。
8. 开展性能测试
参考答案 / 复盘思路: 先明确场景SLO,例如给定并发下的P95延迟和错误率,而不是单说“压测1000次”。基于真实流量确定用户行为和读写比例,分步进行基线、渐增负载、峰值、稳定性与故障恢复测试。监控吞吐、延迟分布、CPU、内存、数据库连接和依赖服务瓶颈;不能只看压测工具侧的QPS。对比环境规模和测试数据量,避免用小数据集得出不可靠结论。2.5小时演示可以做小规模可复现实验,但不应宣称完成生产容量评估。
延伸思考(社区补充)
一次SDET现场考核允许使用AI Coding工具,但只给候选人2.5小时完成API、UI和CI相关任务。候选人应如何验证AI生成的测试代码确实可靠,而不仅是能够运行?
思考方向: 可优先落实一个可重复执行的端到端最小链路,再检查断言、故障注入、环境隔离和可复现的运行结果。
参考链接
https://www.reddit.com/r/QualityAssurance/comments/1iw79eo/
