测试背诵八股文

测试理论基础:
如何在有限的情况下提高测试效率,保证产品上线质量
主动沟通明确需求点,
在项目刚开始的时候测试介入,提前识别风险,
优先覆盖核心功能和高风险模块,确保关键路径的稳定性
灵活调整测试策略,根据项目紧急程度和资源限制,平衡自动化与手动测试的投入
定期评审测试计划,根据反馈优化测试用例,提高覆盖率
什么时候不易使用自动化测试
在缺乏文档时,自动化测试的适用性需谨慎评估。需求不稳定、UI频繁变动、场景复杂、需主观判断或项目周期短的情况下,应优先考虑手工测试或探索性测试。自动化测试更适合需求明确、重复执行且维护成本低的场景。
在没有产品说明书,和需求文档的情况下能进行黑盒测试的设计么
仍然可以进行黑盒测试设计,但需要采用替代方法和策略来弥补文档缺失带来的挑战。这种测试方式通常被称为探索性测试,基于常识,分析实际应用场景,参考同类产品,和项目团队沟通,参考历史数据
测试过程中,发现需求文档不完善
1. 主动沟通与澄清
- 联系产品经理/项目经理:这是最直接的解决方式。需求文档不详细时,应及时与相关方沟通,明确模糊或缺失的细节(如图片格式、大小等)1。
- 跨职能协作:需求传递过程中存在“沟通鸿沟”,需通过会议、讨论等方式确保各方对需求的理解一致2。
2. 补充需求细节
- 参考同类产品:若无法联系到需求方,可参考市场上同类产品的设计逻辑,从用户角度推断合理需求1。
- 编写详细需求文档:将模糊需求细化为功能描述、输入输出、边界条件等,为后续测试提供依据3。
3. 流程优化与预防
- 需求评审与确认:在需求确定前组织评审会议,邀请利益相关者参与,提前发现遗漏3。
- 敏捷开发方法:采用Scrum等敏捷方法,通过频繁迭代和反馈及时调整需求,减少文档不完整的影响3。
- 需求变更管理:建立变更管理流程,记录并评估需求变更,避免不完整需求影响项目进度3。
4. 测试策略调整
- 验证需求可测试性:通过设计测试用例反向验证需求是否可执行,若无法验证则需标记并跟踪。
- 早期介入测试设计:在需求阶段即参与测试过程设计,尽早发现不可验证或模糊的需求。
什么是兼容性测试,侧重哪些方面
兼容性测试是检测软件在不同硬件平台、软件平台上是否可以正常运行的过程,其核心目标是验证软件的可移植性
在系统测试阶段,兼容性测试需重点关注以下维度:
- 平台兼容性
测试软件在不同操作系统(如Windows、Linux发行版)及硬件设备(如32位/64位系统、手机、平板)上的运行表现34。例如,服务器软件需在主流Linux发行版中验证功能稳定性3。 - 互操作性
检查软件与其他系统或应用(如微信、浏览器)的交互是否正常,避免因接口或数据格式冲突导致功能失效3。 - 数据共享兼容性
确保软件支持公开标准的数据传输,与其他应用无障碍交换信息4。 - 版本兼容性
包括向前兼容(支持未来版本)和向后兼容(兼容历史版本),需验证新版本对旧功能及数据的支持能力
比较一下黑盒测试,白盒测试,单元测试,集成测试,系统测试,验收测试的区别和联系
测试方法分类
- 黑盒测试
将软件视为一个“黑盒”,测试人员不关注内部代码逻辑和结构,仅根据功能需求设计测试用例,验证输入与输出是否符合预期14。 - 白盒测试
将软件视为“透明盒子”,测试人员需了解内部代码逻辑和结构,通过检查代码路径、分支和条件来设计测试用例,常用于单元测试14。
测试阶段分类
-
单元测试
- 对象:针对软件的最小单元(如函数、类、模块)。
- 方法:通常由开发人员执行,以白盒测试为主,验证单元内部逻辑和边界条件5。
- 目的:确保每个模块功能正确,是测试流程的起点。
-
集成测试
- 对象:测试多个单元组合后的模块间接口及协同功能。
- 方法:结合黑盒与灰盒测试,关注模块间数据传递和功能协作。
- 目的:验证模块集成后是否满足设计需求。
-
系统测试
- 对象:对整个系统进行测试,包括与其他软硬件的兼容性。
- 方法:以黑盒测试为主,依据需求规格说明书验证系统功能。
- 目的:确保系统在真实环境中运行正常。
-
验收测试
- 对象:由用户或客户主导,验证系统是否满足合同或用户需求。
- 方法:以黑盒测试为主,模拟实际使用场景。
- 目的:确认软件可交付并符合业务目标。
区别与联系
- 区别:
- 粒度:单元测试粒度最小,验收测试粒度最大4。
- 人员:单元测试由开发人员执行,验收测试由用户主导4。
- 依据:单元测试依据代码,验收测试依据用户需求4。
- 联系:
- 递进关系:单元测试→集成测试→系统测试→验收测试是典型流程,前一阶段为后一阶段基础4。
- 方法结合:黑盒/白盒测试可应用于不同阶段(如单元测试常用白盒,系统测试常用黑盒)
测试时会产生哪些文档和记录:
测试计划,测试方案,测试用例,测试报告,缺陷,测试总结报告
怎么才能全面的测到每一个点
1. 测试用例设计方法
等价类划分,边界值分析,错误推断法
2. 优先级划分策略
高优先级,中低优先级
3. 自动化与工具辅助
4. 持续优化与反馈
怎样估计测试工作量?
WBS估算法(工作分解结构)
功能点估算法
基于开发时间的比例法
测试的工作流程,软件测试的步骤:
需求分析与测试计划阶段
测试设计与用例开发
测试环境搭建与准备
测试执行与缺陷管理
测试报告与总结
上线与持续监控
测试结束的标准是什么
测试结束需同时满足用例执行、缺陷修复、覆盖率达标及性能安全要求,并通过报告和上线监控确保质量闭环。实际标准需根据项目需求灵活调整。
什么是软件的生命周期
产生、开发、使用、维护直至被淘汰
当测试过程发生错误,有哪几种解决办法
帮助开发制定编码规范
调试与错误定位
验证测试方法
处理无法复现的BUG
解决开发不承认的BUG
设定清晰的测试目标
设计错误处理路径
使用跟踪法与原因排除法










浙公网安备 33010602011771号