94.软件测试的目的?
  测试的目的是想以少的人力、物力和时间找出软件中潜在的各种错误和缺陷,通过修正种错误和缺陷提高软件质量,回避软件发布后由于潜在的软件缺陷和错误造成的隐患带来的商业风险。
  Beta 测试:在客户场地,由客户进行的对产品预发布版本的测试。
  软件验收测试合格通过准则:1软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。2所有测试项没有残余的一级二级三级的错误。3立项审批表、需求分析文档、设计文档和编码实现一致。4验收测试工件齐全(测试计划,测试用例,测试日志,测试通知单,测试分析报告)
软件验收测试包括正式验收测试、ALPHA测试、BETA测试三种测试。
系统测试的策略:功能测试,性能测试,外部接口测试,界面测试,强度测试,冗余测试,可靠性测试,恢复测试等
  设计系统测试计划需要参考的项目文档有软件测试计划、软件需求工件、和迭代计划。
  利用因果图导出测试用例需要经过的一般步骤
  1.分析程序规格说明的描述中,哪些是原因,哪些是结果。
  2.分析程序规格说明的描述中语义的内容,并将其表示成连接各个原因与各个结果的因果图
  3.在因果图上使用若干个特殊的符号标明特定的约束条件
  4.把因果图转换成判定表
  5.把判定表中每一列表示的情况写成测试用例
  阶段评审与同行评审的区别
  同行评审目的:发现小规模工作产品的错误,只要是找错误;
  阶段评审目的:评审模块阶段作品的正确性可行性及完整性
  同行评审人数:3-7人人员必须经过同行评审会议的培训,由SQA指导
  阶段评审人数:5人左右评审人必须是专家具有系统评审资格
  同行评审内容:内容小一般文档 <   40页, 代码 < 500行
  阶段评审内容: 内容多,主要看重点
  同行评审时间:一小部分工作产品完成
  阶段评审时间: 通常是设置在关键路径的时间点上!

  94.什么是软件测试?
  使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。
软件测试是在软件投入运行前,对软件需求分析、设计规格说明和编码的终复审,是软件质量保证的关键步骤。软件测试是为了发现错误而执行程序的过程。

  95.简述集成测试的过程
  根据IEEE标准 集成测试划分为4个阶段:计划阶段,设计阶段,实现阶段,执行阶段(实施阶段)
  计划阶段
  1)时间安排        概要设计完成评审后大约一个星期
  2)输入            需求规格说明书 概要设计文档   产品开发计划路标
  3)入口条件        概要设计文档已经通过评审
  4)活动步骤       1.定被测试对象和测试范围 2.评估集成测试被测试对象的数量及难度,即工作量 3.确定角色分工和作任务4.标识出测试各阶段的时间,任务,约束等条件5.考虑一定的风险分析及应急计划6.考虑和准备集成测试需要的测试工具,测试仪器,环境等资源7.考虑外部技术支援的力度和深度,以及相关培训安排8.定义测试完成标准
  5)输出            集成测试计划
  6)出口条件        集成测试计划通过概要设计阶段基线评审
  设计阶段
  1)时间安排 详细设计阶段开始
  2)输入   需求规格说明书   概要设计   集成测试计划
  3)入口条件   概要设计基线通过评审
  4)活动步骤   1.被测对象结构分析 2.集成测试模块分析3.集成测试接口分析4.集成测试策略分析
  5.集成测试工具分析6.集成测试环境分析7.集成测试工作量估计和安排。
  5)输出   集成测试设计(方案)
  6.出口条件   集成测试设计通过详细设计基线评审。
  实现阶段
  1)时间安排 在编码阶段开始后进行
  2)输入 需求规格说明书   概要设计   集成测试计划 集成测试设计
  3)入口条件 详细设计阶段
  4)活动步骤   集成测试用例设计 集成测试程设计 集成测试代码设计(如果需要)   集成测试脚本(如果需要)  集成测试工具(如果需要)
  5)输出   集成测试用例 集成测试规程 集成测试代码 集成测试脚本 集成测试工具
  6)出口条件   测试用例和测试规程通过编码阶段基线评审
执行阶段
  1)时间安排 单元测试已经完成后可以开始执行集成测试了
  2)输入      需求规格说明书 概要设计   集成测试计划   集成高度设计   集成测试例 集成测试规程   集成测试代码(如果有)   集成测试脚本 集成测试工具 详细设计   代码   单元测试报告
  3)入口条件 单元测试阶段已经通过基线化评审
  4)活动步 骤 执行集成测试用例 回归集成测试用例   撰写集成测试报告
  5)输出   集成测试报告
  6)出口条件   集成测试报告通过集成测试阶段基线评审
  文档测试?
  文档审核测试目前越来越引起人们的重视,软件质量不是检查出来的,而是融进软件开发中来。文档审核测试主要包括需求文档测试,设计文档测试,为前置软件测试中的一部分。
  需求文档测试:主要测试需求中是否存在逻辑矛盾以及需求在技术上是否可以实现;
  设计文档测试 :测试设计是否符合全部需求以及设计是否合理。

  96.白盒测试有哪几种方法?
白盒测试也称结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证。“白盒”法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。“白盒”法是穷举路径测试。
 
  97.白箱测试和黑箱测试是什么?什么是回归测试?
  白箱测试是在看懂程序代码和设计方案的前提下,进行软件的测试。这种测试注重于源代码的覆盖率,同时需要测试者具备较高的技术水平。白箱测试的优点是可以对代码有详细的审查,能找出隐藏在代码中的错误,从而确保高质量的代码;缺点是很多时候不能看完所有的代码,不能找出欠缺的代码,同时白箱测试和用户如何使用软件无关。
  黑箱测试的优点是测试者无需熟悉软件内部结构,并且根据蓝图在早期可以制定测试方案,并不依赖于开发者的工作进展,而且黑箱测试简单易行,对测试者的技术要求不高;但是,黑箱测试主要是功能上的测试,只能覆盖只有一小部分的输入,不能保证程序的所有部分都被测试到。
   回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。自动回归测试将大幅降低系统测试、维护升级等阶段的成本。
   回归测试包括两部分:函数本身的测试、其他代码的测试。
在对被修改的函数重新测试。如果函数的设计功能没有变化,直接运行函数测试可以了。如果修改了设计功能,则要根据增减的功能点,增加或删除测试用例。另外,还要完成白盒覆盖。
   函数代码的修改可能导致调用该函数的代码产生错误,所以需要测试其他代码。如果函数是私有函数并且未涉及到全局变量,应运行类测试,否则应运行工程测试。在函数列表中选择类测试或工程测试,编译运行测试工程,即可执行对其他代码的回归测试。
 
  98.单元测试、集成测试、系统测试的侧重点是什么?
  单元测试:以代码检查、逻辑覆盖
  集成测试:增加静态结构分析、静态质量度量
  系统测试:根据黑盒测试结果,采用白盒测试
   单元测试是在软件开发过程中要进行的低级别的测试活动,在单元测试活动中,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。
  集成测试,也叫组装测试或联合测试。在单元测试的基础上,将所有模块按照设计要求,组装成为子系统或系统,进行集成测试。实践表明,一些模块虽然能够单独地工作,但并不能保证连接起来也能正常的工作。程序在某些局部反映不出来的问题,在全局上很可能暴露出来,影响功能的实现。
  系统测试是将经过测试的子系统装配成一个完整系统来测试。它是检验系统是否确实能提供系统方案说明书中指定功能的有效方法。