测试八股 - 速记版


🧠 软件测试面试速记版(精炼一页)


1. 测试核心理解

  • 目的:找Bug,验证功能/性能/用户体验
  • 意义:提前发现缺陷,降低成本,提升质量
  • 方法:功能/性能/安全测试,黑盒白盒
  • 工具:Selenium,JMeter,Postman

2. 常见测试类型

类型 描述
单元测试 最小函数/方法(Junit)
集成测试 多模块交互(Postman/Selenium)
系统测试 整体系统功能+性能
回归测试 确保改动不影响旧功能
验收测试 Alpha(内测)Beta(外测)

3. 黑盒 vs 白盒

  • 黑盒:只测输入输出,不看代码(等价类/边界值)
  • 白盒:测代码逻辑结构(语句/分支/路径覆盖)

4. 测试用例设计法

  • 黑盒:等价类、边界值、判定表、状态转移
  • 白盒:语句/分支/路径/条件/循环覆盖

5. 性能测试关注指标

  • TPS(越高越好)
  • 响应时间(越低越好)
  • 并发数(虚拟用户数)
  • 错误率(应趋近于0)

6. 测试流程简图

需求分析 → 测试计划 → 用例设计/评审 → 测试执行 → 回归/性能测试 → 测试报告 → 上线复盘


7. Bug 生命周期(7大状态)

New → Assigned → Open → Fixed → Retest → Closed
可选:Rejected / Reopen / Postponed


8. 登录界面测试点速查

  • 功能:正确/错误登录、验证码、密码校验
  • 安全:加密传输、暴力破解限制、XSS/SQL注入
  • 可用性:快捷键、Tab切换
  • 性能:响应快、并发稳定
  • 兼容:浏览器/设备多平台适配

9. 测试常用工具简表

工具 用途
Selenium Web 自动化
Appium 移动端自动化
JMeter 性能/压测
Postman 接口功能测试
Pytest Python单元测试
Junit Java单元测试
Fiddler 抓包工具

10. 快速答题金句模板

  • 测试是确保软件质量的防火墙
  • 用例设计关键在覆盖广、定位准
  • 测试不仅找Bug,更是保障体验和性能
  • 需求是测试的源头,用户是验证的终点
  • 测试像侦探,逻辑缜密,步步验证

📌 软件测试速记版(11~20)


11. 等价类划分 & 边界值法

  • 等价类:将输入数据分类,一个类测一个代表值即可(有效/无效)
  • 边界值:测最小值、最大值、上下边界附近
  • ✅ 常用于输入量多的表单验证等,能减少用例数量

12. 等价类划分的难点

  • 定义准确等价类(不重不漏)
  • 区分有效与无效输入
  • 输入组合复杂时要考虑多个字段交叉

13. 接口测试用例设计要点

  • 明确功能描述、请求方式、参数格式、响应结构
  • 校验返回值是否正确
  • 检查业务逻辑是否符合预期
  • 数据库校验、异常输入、权限/加密测试不能少

14. 常用接口测试工具

  • Postman:功能性接口测试
  • JMeter:性能/压测
  • Swagger UI:查看+调试接口文档

15. 你是如何测试接口的?

  • 先看接口文档 → 明确参数/响应结构
  • 写用例:正常+异常+权限+边界
  • 工具执行:Postman断言状态码、响应体
  • 校验数据库、响应时间、错误码

16. 性能测试关注哪些指标?

指标 含义
TPS 每秒事务数(越高越好)
响应时间 平均响应速度(越低越好)
并发数 同时请求的用户数
错误率 失败请求比例(越低越好)

17. 功能测试用例包含内容

  • 用例ID / 名称 / 模块 / 前置条件 / 步骤
  • 测试数据 / 预期结果 / 实际结果 / 通过与否
  • 环境信息 / 备注 / 缺陷ID(如有)

18. 如何写测试用例?

  • 深入理解需求
  • 参考历史用例与Bug(前车之鉴)
  • 使用等价类、边界值、判定表等技术找覆盖点
  • 从经验与特例中补充遗漏用例
  • 格式要清晰,方便执行与复测

19. 测试用例设计方法

黑盒法

  • 等价类、边界值、因果图、决策表、状态转换

白盒法

  • 语句覆盖、分支覆盖、路径覆盖、循环覆盖、条件覆盖

🧠 选用方法需根据项目复杂度、业务逻辑灵活搭配!


20. 如何提高用例覆盖率?

  • 每条需求点都要覆盖
  • 分析业务逻辑+异常场景
  • 站在用户角度设计场景
  • 从功能/性能/安全多维度考虑
  • 定期组织用例评审补漏补缺

21. Bug 生命周期 & 类型

🌀 生命周期流程
New → Assigned → Open → Fixed → Retest → Closed
🔁 衍生状态:Reopen / Rejected / Postponed / Pending Reject

🐞 常见Bug类型

  • 代码逻辑
  • UI界面
  • 设计缺陷
  • 安装/配置问题
  • 性能/安全缺陷
  • 测试脚本相关

22. 常用测试工具速览

工具 用途
Selenium Web自动化测试
Appium 移动端自动化测试
JMeter 性能、压力测试
LoadRunner 高级性能并发测试
Postman 接口功能测试
Pytest Python单元测试
JUnit Java单元测试
Fiddler 抓包分析请求/响应

23. 自动化测试框架概览

🧱 典型框架:

  • Pytest:Python自动化核心,结合Selenium、Appium、接口测试
  • JUnit:Java常用单元测试框架
  • Selenium/Appium:分别用于Web、App UI自动化
  • LoadRunner:模拟大规模并发用户

💡 自动化核心:脚本结构化、断言验证、持续集成支持


24. App 测试 vs Web 测试

项目 Web App
架构 B/S C/S
更新 服务端统一 客户端需手动更新
性能关注 响应时间 流量、电量、CPU、GPU、内存
异常处理 页面错误提示 弱网/中断/来电等需重点验证
兼容性 浏览器内核、插件 分辨率、机型、系统版本等
操作方式 鼠标/键盘 触控、手势、多点触控、横竖屏

25. 软件质量的六大特征

  1. 功能性:符合用户需求
  2. 可靠性:在预期条件下稳定运行
  3. 易用性:界面友好、易理解操作
  4. 效率:性能优良
  5. 可维护性:易修改、易测试、易理解
  6. 可移植性:跨平台支持、部署灵活

26. 杯子检测类比测试六特征

  • 功能性:能盛水、容量正确、符合标准
  • 可靠性:摔不碎、热水不炸
  • 易用性:好拿、易清洗
  • 效率:保温效果是否达标
  • 可维护性:是否便于维修或更换零件
  • 可移植性:冷热环境、不同场合是否能用

✅ 面试类比题记住“软件质量六特征”+生活应用场景!


27. 给一个页面,如何测试?

🧪 多维度拆解:

  • UI测试:布局、边界、对齐、字体、显示是否截断
  • 功能测试:按钮、输入框、字段校验
  • 安全测试:SQL注入、脚本注入、后台校验
  • 性能测试:响应速度、资源消耗
  • 兼容性测试:分辨率、浏览器、设备类型支持

28. 登录界面测试点全面总结

类别 内容例举
功能测试 正确/错误登录、跳转是否正确、是否记住用户名、密码加密显示
安全性 SQL注入、XSS、密码加密传输、错误次数限制、Cookie安全性
界面测试 UI布局合理、文字准确、样式统一
性能测试 登录速度、并发登录测试
可用性 键盘操作、快捷键、Tab切换、回车登录
兼容性 多浏览器、多平台、多分辨率、多语言环境测试

29. Bug争议怎么处理?

  • 与开发沟通解释原因
  • 查阅需求文档或产品原型验证
  • 邀请产品经理确认是否为Bug
  • 最终判断:关闭 or 提交修复

✅ 原则:以用户需求 & 产品文档为标准,不是凭主观!


30. 如何定位 Bug 是前端还是后端?

  1. 先复现Bug,记录步骤
  2. 查看浏览器控制台和网络请求
    • 如果前端请求无误但响应异常 → 问题在后端
    • 如果响应正确但展示异常 → 问题在前端
  3. 查看服务器日志
  4. 验证数据库及请求处理逻辑
  5. 检查是否为网络通信异常

posted @ 2025-05-18 19:06  vv大人  阅读(871)  评论(0)    收藏  举报