测试工程师面试题

性能测试 — 面试指南

"你怎么做性能测试?"

为什么面试官会问这道题

性能问题造成真实业务影响——慢页面丢用户,过载系统会崩溃。测试你主动确保系统可靠性的能力。

如何回答

  1. 1

    区分负载测试、压力测试和浸泡测试。

  2. 2

    描述如何建立基线和设定性能预算。

  3. 3

    解释工具和测试环境方法。

  4. 4

    分享结果驱动的例子。

参考回答示例

我分三个阶段做性能测试。首先基线:在正常负载下分析当前系统,建立响应时间、吞吐量和资源利用率基准。其次负载测试:逐步增加并发用户找到临界点和瓶颈——用k6或Locust。第三浸泡测试:持续24+小时负载发现内存泄漏和连接池耗尽。我总是在尽可能接近生产的环境中测试。在上一个项目中,性能测试发现了一个只在持续流量4小时后才出现的数据库连接泄漏。我们在上线前修复了它。

实用技巧

  • 总是在类生产环境中测试——本地测试结果有误导性。

  • 关注对用户有意义的指标:响应时间百分位(p95、p99),而非只看平均值。

  • 将性能测试纳入CI/CD自动捕获回归。

常见问题

负载和压力测试有什么区别?

负载测试验证系统能处理预期流量。压力测试超越预期极限找到临界点并观察故障行为。

推荐什么工具?

k6适合开发者友好的脚本化测试,JMeter适合复杂场景,Locust适合Python团队,Gatling适合Scala/Java环境。

如何设定性能目标?

基于SLA、用户期望和业务需求。常见目标:p95响应时间低于200ms,99.9%可用性,处理2倍预期峰值流量。

面试时担心忘词?即答侠实时助你

即答侠 AI 实时监听面试对话,自动识别问题并即时生成回答建议——无感辅助,让你从容应对每一道题。

免费试用即答侠