测试背诵八股文

image

测试理论基础:

如何在有限的情况下提高测试效率,保证产品上线质量

主动沟通明确需求点,

在项目刚开始的时候测试介入,提前识别风险,

优先覆盖核心功能和高风险模块,确保关键路径的稳定性

灵活调整测试策略,根据项目紧急程度和资源限制,平衡自动化与手动测试的投入‌

定期评审测试计划,根据反馈优化测试用例,提高覆盖率

 

什么时候不易使用自动化测试

在缺乏文档时,自动化测试的适用性需谨慎评估。‌需求不稳定、UI频繁变动、场景复杂、需主观判断或项目周期短‌的情况下,应优先考虑手工测试或探索性测试‌。自动化测试更适合需求明确、重复执行且维护成本低的场景。

 

在没有产品说明书,和需求文档的情况下能进行黑盒测试的设计么

仍然可以进行黑盒测试设计‌,但需要采用替代方法和策略来弥补文档缺失带来的挑战‌。这种测试方式通常被称为‌探索性测试‌‌,基于常识,分析实际应用场景,参考同类产品,和项目团队沟通,参考历史数据

 

测试过程中,发现需求文档不完善

1. ‌主动沟通与澄清‌

  • ‌联系产品经理/项目经理‌:这是最直接的解决方式。需求文档不详细时,应及时与相关方沟通,明确模糊或缺失的细节(如图片格式、大小等)‌1。
  • ‌跨职能协作‌:需求传递过程中存在“沟通鸿沟”,需通过会议、讨论等方式确保各方对需求的理解一致‌2。

2. ‌补充需求细节‌

  • ‌参考同类产品‌:若无法联系到需求方,可参考市场上同类产品的设计逻辑,从用户角度推断合理需求‌1。
  • ‌编写详细需求文档‌:将模糊需求细化为功能描述、输入输出、边界条件等,为后续测试提供依据‌3。

3. ‌流程优化与预防‌

  • ‌需求评审与确认‌:在需求确定前组织评审会议,邀请利益相关者参与,提前发现遗漏‌3。
  • ‌敏捷开发方法‌:采用Scrum等敏捷方法,通过频繁迭代和反馈及时调整需求,减少文档不完整的影响‌3。
  • ‌需求变更管理‌:建立变更管理流程,记录并评估需求变更,避免不完整需求影响项目进度‌3。

4. ‌测试策略调整‌

  • ‌验证需求可测试性‌:通过设计测试用例反向验证需求是否可执行,若无法验证则需标记并跟踪。
  • ‌早期介入测试设计‌:在需求阶段即参与测试过程设计,尽早发现不可验证或模糊的需求。

 

什么是兼容性测试,侧重哪些方面

兼容性测试是检测软件在不同硬件平台、软件平台上是否可以正常运行的过程,其核心目标是验证软件的可移植性‌

在系统测试阶段,兼容性测试需重点关注以下维度:

    1. ‌平台兼容性‌
      测试软件在不同操作系统(如Windows、Linux发行版)及硬件设备(如32位/64位系统、手机、平板)上的运行表现‌34。例如,服务器软件需在主流Linux发行版中验证功能稳定性‌3。
    2. ‌互操作性‌
      检查软件与其他系统或应用(如微信、浏览器)的交互是否正常,避免因接口或数据格式冲突导致功能失效‌3。
    3. ‌数据共享兼容性‌
      确保软件支持公开标准的数据传输,与其他应用无障碍交换信息‌4。
    4. ‌版本兼容性‌
      包括向前兼容(支持未来版本)和向后兼容(兼容历史版本),需验证新版本对旧功能及数据的支持能力‌

 

比较一下黑盒测试,白盒测试,单元测试,集成测试,系统测试,验收测试的区别和联系

测试方法分类

  1. ‌黑盒测试‌
    将软件视为一个“黑盒”,测试人员不关注内部代码逻辑和结构,仅根据功能需求设计测试用例,验证输入与输出是否符合预期‌14。
  2. ‌白盒测试‌
    将软件视为“透明盒子”,测试人员需了解内部代码逻辑和结构,通过检查代码路径、分支和条件来设计测试用例,常用于单元测试‌14。

测试阶段分类

  1. ‌单元测试‌

    • ‌对象‌:针对软件的最小单元(如函数、类、模块)
    • ‌方法‌:通常由开发人员执行,以白盒测试为主,验证单元内部逻辑和边界条件‌5。
    • ‌目的‌:确保每个模块功能正确,是测试流程的起点。
  2. ‌集成测试‌

    • ‌对象‌:测试多个单元组合后的模块间接口及协同功能‌
    • ‌方法‌:结合黑盒与灰盒测试,关注模块间数据传递和功能协作‌
    • ‌目的‌:验证模块集成后是否满足设计需求。
  3. ‌系统测试‌

    • ‌对象‌:对整个系统进行测试,包括与其他软硬件的兼容性‌
    • ‌方法‌:以黑盒测试为主,依据需求规格说明书验证系统功能‌
    • ‌目的‌:确保系统在真实环境中运行正常。
  4. ‌验收测试‌

    • ‌对象‌:由用户或客户主导,验证系统是否满足合同或用户需求‌
    • ‌方法‌:以黑盒测试为主,模拟实际使用场景‌
    • ‌目的‌:确认软件可交付并符合业务目标‌

区别与联系

    • ‌区别‌:
      • ‌粒度‌:单元测试粒度最小,验收测试粒度最大‌4。
      • ‌人员‌:单元测试由开发人员执行,验收测试由用户主导‌4。
      • ‌依据‌:单元测试依据代码,验收测试依据用户需求‌4。
    • ‌联系‌:
      • ‌递进关系‌:单元测试→集成测试→系统测试→验收测试是典型流程,前一阶段为后一阶段基础‌4。
      • ‌方法结合‌:黑盒/白盒测试可应用于不同阶段(如单元测试常用白盒,系统测试常用黑盒)‌

测试时会产生哪些文档和记录:

测试计划,测试方案,测试用例,测试报告,缺陷,测试总结报告

 

怎么才能全面的测到每一个点

1. ‌测试用例设计方法

‌等价类划分‌,边界值分析,错误推断法‌

2. ‌优先级划分策略

高优先级‌,中低优先级‌

3. ‌自动化与工具辅助

4. ‌持续优化与反馈

 

怎样估计测试工作量?

WBS估算法(工作分解结构)

‌功能点估算法

基于开发时间的比例法

 

测试的工作流程,软件测试的步骤:

需求分析与测试计划阶段

测试设计与用例开发

测试环境搭建与准备

测试执行与缺陷管理

测试报告与总结

上线与持续监控

 

测试结束的标准是什么

测试结束需同时满足用例执行、缺陷修复、覆盖率达标及性能安全要求,并通过报告和上线监控确保质量闭环‌。实际标准需根据项目需求灵活调整。

 

什么是软件的生命周期

产生、开发、使用、维护直至被淘汰

 

当测试过程发生错误,有哪几种解决办法

‌帮助开发制定编码规范‌

调试与错误定位‌

‌验证测试方法

处理无法复现的BUG‌

解决开发不承认的BUG‌

设定清晰的测试目标

设计错误处理路径

使用跟踪法与原因排除法

 

image

 

image

image

 

image

 

image

 

image

 

image

 

image

 

image

 

 
 
posted @ 2025-11-09 13:17  程程111  阅读(5)  评论(0)    收藏  举报