1.什么是软件测试?
软件测试:在规定的条件下对程序进行操作,以发现错误,对软件质量进行评估,包括对软件形成过程的文档、数据以及程序进行测试。

2.软件测试的目的?
测试是程序的执行过程,目的在于发现软件的缺陷。

3.在测试设计阶段,主要参与的人员有哪些?并行使什么职责?
  • 项目负责人:   作为双方沟通的桥梁与客户方项目负责人进行沟通;
                        组织测试设计人员设计测试用例;
                        合理分配工作任务,控制设计进度;
                        定期组织测试设计进展,汇报给相应人员;
                        定期编写测试报告;
                        编写阶段总结报告。
  • 测试分析人员:根据系统的需求和设计更改变更测试需求;
                        为测试设计人员提供支持。
  • 测试设计人员:根据项目负责人的分配进行测试用例设计工作;
                        根据测试需求,配合得到的文档和系统(原型)设计测试用例。
  • 测试开发人员:根据项目负责人的分配进行测试脚本和模块的开发工作。

4.请回答出软件开发的流程?
用户需求—>需求分析与系统设计—>概要设计—>详细设计—>编码

—>集成—>实施—>交付


5.软件的危机的体现有哪些?

概括来说,软件危机包含两方面问题:一、如何开发软件,以满足不断增长,日趋复杂的需求;二、如何维护数量不断膨胀的软件产品。

具体地说,软件危机主要有以下表现:
(1)对软件开发成本和进度的估计常常不准确。开发成本超出预算,实际进度比预定计划一再拖延的现象并不罕见。
(2)用户对“已完成”系统不满意的现象经常发生。
(3)软件产品的质量往往靠不住。Bug一大堆,Patch一个接一个。
(4)软件的可维护程度非常之低。
(5)软件通常没有适当的文档资料。
(6)软件的成本不断提高。
(7)软件开发生产率的提高赶不上硬件的发展和人们需求的增长。
软件危机的原因,一方面是与软件本身的特点有关;另一方面是由软件开发和维护的方法不正确有关。


6.W,H,X,测试前置模型个自的特点.

W模型:强调测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求,设计等同样需要测试,也就是说测试和开发是同步进行的。

H模型:测试准备与测试执行分离,有利于资源调配。降低成本,提高效率充分体现测试过程(不是技术)的复杂性,
有组织、结构化的测试流程,有助于跟踪测试投入的流向.

X模型:针对单独程序片段所进行的相互分离的编码和测试,此后将进行频繁的交接,通过集成最终合成为可执行的程序。这些可执行程序还需要进行测试。已通过集成测试的成品可以进行封版并提交给用户,也可以作为更大规模和范围内集成的一部分。 


7.测试流程有分哪几个阶段?每阶段要做什么事情?

测试流程一般为:需求分析→测试计划→测试设计→测试环境搭建→测试执行→测试记录→缺陷管理→软件评估→测试总结.

需求分析:包括软件功能需求分析、测试环境需求分析、测试资源需求分析等。

测试计划:依据主要是项目开发计划和测试需求分析结果而制定。

测试设计:包括测试用例编写和测试场景设计两方面。

测试环境搭建:不同软件产品对测试环境有着不同的要求。

测试执行:测试执行过程又可以分为以下阶段: 

单元测试→集成测试→系统测试→出厂测试,其中每个阶段还有回归测试等。

测试记录:包括两方面:由谁提交和缺陷描述。

缺陷管理:缺陷管理工具。

软件评估:评估指软件经过一轮又一轮测试后,确认软件无重大问题或者问题很少的情况下,对准备发给客户的软件进行评估,以确定是否能够发行给客户或投放市场。

测试总结:一般要对整个项目做个回顾总结,看有哪些做的不足的地方,有哪些经验可以对今后的测试工作做借鉴使用,等等。


8.什么是测试需求?

测试需求是指导测试人员测试的范围和目标。


9.安装测试需求、界面测试需求的原则

安装测试需求:缺省安装配置优先,按照安装配置结构划分,考虑所有安装配置,考虑安装过程中的异常行为;
界面测试需求:界面功能,根据界面顺序划分,考虑控件对各种输入的相应,界面风格,先整体后局部,先共性后个性,

                    局部按界面顺序划分,考虑界面风格和元素的各种属性(位置,大笑,颜色,显示器),考虑内容正确性。

10.测试计划分析的步骤

1、确定计划范围;2、确定测试策略;3、确定自动化策略;4、确定测试标准;5、确定测试架构;6、确定项目管理机制;7、预估测试工作量;8、评估风险并准备风险缓解计划;9、测试计划评审.

11.等价类划分的原则有哪几条?

1、在输入条件规定了取值范围或值的个数的情况下,可以确立一个有效等价类和两个无效等价类;

2、在输入条件规定了输入值的集合或者规定了"必须如何"的条件的情况下,可以确立一个有效等价类和一个无效等价类。

3、在条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。

4、在规定了输入数据的一组值(假定N个),并且程序要对每一个输入值分别处理的情况下,可确立N个有效等价类和一个无效等价类。

5、在规定了输入数据必须遵守的规则情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。