软件测试面试题和答案

时间:2024-11-27 14:18:55 晓璇 面试技巧 我要投稿
  • 相关推荐

软件测试面试题和答案

  软件测试的面试者要学会做好面试准备,那么你了解面试题及答案了吗?下面阳光网小编已经为你们整理了软件测试面试题和答案,希望可以帮到你。

软件测试面试题和答案

  软件测试面试题和答案 1

  1、描述软件产生内存泄露的原因以及检查方式。(可以结合一种开发语言进行描述)

  参考答案:

  内存泄露的原因,主要是由于开发过程当中申请了计算机资源(例如对象、内存等),但是使用资源完成以后没有及时释放资源导致的。例如在C语言当中使用了malloc申请了内存,但是未使用free来释放内存。

  2、简述什么是值传递,什么是地址传递,两者区别是什么?

  参考答案:

  值传递主调函数传递给被调函数的是值的拷贝,不是原值;地址传递主调函数传递给被调函数的是值的地址。区别是值传递被调函数中的操作不改变主调函数的值,而地址传递则不同。

  3、结构化程序设计和面向对象程序设计各自的'特点及优缺点是什么?

  参考答案:(不需要回答如此复杂)

  结构化程序设计思想采用了模块分解与功能抽象和自顶向下、分而治之的方法,从而有效地将一个较复杂的程序系统设计任务分解成许多易于控制和处理的子程序,便于开发和维护。它的重点在于把功能进行分解。但是由于在实际开发过程当中需求会经常发生变化,因此,它不能很好的适应需求变化的开发过程。结构化程序设计是面向过程的。

  面向对象程序设计以需求当中的数据作为中心,来进行设计,具有良好的代码重用性。

  封装性:也叫数据隐藏,用户无需知道内部工作流程,只要知道接口和操作就可以的,C++中一般用类来实现封装。

  继承性: 一种支持重用的思想,在现有的类型派生出新的子类,例如新型电视机在原有型号的电视机上增加若干中功能而得到,新型电视机是原有电视机的派生,继承了原有电视机的属性,并增加了新的功能。 多态性:指在一般类中定义的属性或行为,被特殊类继承之后,可以具有不同的数据类型或表现出不同的行为。

  动态联编:指一个计算机程序自身彼此关联的过程,按照联编所进行的阶段不同,可分为两种不同的联编方法:静态联编和动态联编。

  4、简述什么是存储过程和触发器?

  参考答案:

  存储过程:是数据库中的一个对象,Transact-SQL 语句的预编译集合,这些语句在一个名称下存储并作为一个单元进行处理。(可以理解为C语言中的函数,有参数、返回值等函数特性)触发器是一种特殊类型的存储过程,当使用下面的一种或多种数据修改操作在指定表中对数据进行修改时,触发器会生效:UPDATE、INSERT 或 DELETE。

  软件测试面试题和答案 2

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

  兼容测试:兼容性测试是指测试软件在特定的硬件平台上、不同的应用软件之间、不同的操纵系统平台上、不同的网络等环境中是否能够很友好的运行的测试。

  兼容的类型:细分为

  a)硬件兼容性测试:与整机兼容,与外设兼容

  b)软件兼容性测试:操作系统/平台的兼容,数据库兼容,不同浏览器兼容,不同应用软件之间的兼容,软硬件配合的兼容

  c)数据兼容性测试

  兼容测试的重点:对兼容环境的分析。通常,是在运行软件的'环境不是很确定的情况下,才需要做兼容测试。

  2、 我现在有个程序,发现在Windows上运行得很慢,怎么判别是程序存在问题还是软硬件系统存在问题?

  01、确认当前软硬件配置是否符合软件的推荐标准

  02、确认当前的系统是否独立,没有对外提供类似消耗CPU,内存等资源的服务。

  03、如果是C/S或B/S结构的软件,检查与服务器的连接是否有问题,或者访问有问题造成。

  04、在系统没有负载的情况下,查看应用程序对CPU/内存的访问情况。

  05、检查系统是否有中毒的特征;

  06、可能的话在另一台相同配置,相同操作系统的机器上运行

  软件测试面试题和答案 3

  1、 测试的策略有哪些?

  测试策略可以定义为:项目测试中,描述测试活动的一般方法和目标,其中包括要进行的测试阶段及测试类型。

  所以按阶段分:可以分为单元测试,集成测试,系统测试,回归测试等

  按测试类型可以分为:黑盒/白盒测试,静态/动态测试,手工/自动化测试,功能/性能测试,安全性测试,可靠性测试,界面测试,强度测试,压力测试,负载测试,容量测试,稳定性测试,兼容性测试,Beta/a测试等

  2、 正交表测试用例设计方法的特点是什么?

  01、用最少的实验覆盖最多的操作,测试用例设计很少,效率高,但是很复杂;

  02、对于基本的验证功能,以及二次集成引起的缺陷,一般都能找出来;但是更深的缺陷,更复杂的缺陷,还是无能为力的;

  03、具体的环境下,正交表一般都很难做的。大多数,只在系统测试的时候使用此方法。

  3、 描述测试用例设计的完整过程?

  对需求文档(产品需求文档、软件需求规格说明书等)进行分析需求分析及需求变更的维护工作;

  根据需求文档, 得出测试需求(功能测试需求、非功能性测试需求);

  根据测试需求设计测试方案,评审测试方案;

  方案评审通过后,设计测试用例,再对测试用例进行评审;

  4、 单元测试的策略有哪些?

  自顶向下的单元测试策略:先对最顶层的单元进行测试,把顶层所调用的单元做成桩模块。其次对第二层进行测试,使用上面已测试的`模单元做驱动模块。如此类推,直到测试完所有模块。

  自底向上的单元测试策略:先对模块调用层次图上最低层的模块进行单元测试,模拟调用该模块的模块做驱动模块。然后再对上面一层做单元测试,用下面已被测试过的模块做桩模块。一次类推,直到测试完所有模块。

  孤立的测试策略:不考虑每个模块与其他模块之间的关系,为每个模块设计桩模块和驱动模块,每个模块独立进行测试。

  5、 你所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型的区别与联系(如功能测试、性能测试)?

  容量测试

  测试系统对不同级别数据容量下的工作能力,意在获取系统的最佳数据处理容量和最大处理容量。

  稳定性测试

  测试系统的长期稳定运行的能力。同疲劳强度测试的区别是,稳定性测试的压力强度较小,一般趋向于客户现场日常状态下的压力强度,当然在时间不能保证稳定性的状态下,需要加大压力强度来测试,此时的压力强度则会高于正常值。

  兼容性测试是指测试软件在特定的硬件平台上、不同的应用软件之间、不同的操纵系统平台上、不同的网络等环境中是否能够很友好的运行的测试。

  压力测试

  通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大的服务级别的测试。

  软件测试面试题和答案 4

  1、 测试人员在软件开发过程中的任务是什么?(初级)(5分)

  答:

  (1)寻找Bug;

  (2)避免软件开发过程中的缺陷;

  (3)衡量软件的品质;

  (4)关注用户的需求。

  总的目标是:确保软件的质量。

  2、 在您以往的工作中,一条软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量的软件缺陷(Bug)记录?(初级)(6分)

  答:一条Bug记录最基本应包含:编号、Bug所属模块、Bug描述、Bug级别、发现日期、发现人、修改日期、修改人、修改方法、回归结果等等;要有效的发现Bug需参考需求以及详细设计等前期文档设计出高效的测试用例,然后严格执行测试用例,对发现的问题要充分确认肯定,然后再向外发布如此才能提高提交Bug的质量。

  3、 界面测试题及设计题。请找出下面界面中所存在的问题并分别列出;用黑盒测试的任何一种方法设计出此登陆窗体的测试用例。(中级)(6分)

  答:

  (1)窗体的标题栏中为空,没有给出标题。

  (2)用户名和密码控件的字体不一致并且没有对齐。

  (3)文本框的大小不一致没有对其。

  (4)确定和取消按钮控件的大小不一致。

  4、 黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点!(中级)(5分)

  答:

  黑盒测试的优点有:

  (1)比较简单,不需要了解程序内部的代码及实现;

  (2)与软件的内部实现无关;

  (3)从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;

  (4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;

  (5)在做软件自动化测试时较为方便。

  黑盒测试的缺点有:

  (1)不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;

  (2)自动化测试的复用性较低。

  白盒测试的优点有:帮助软件测试人员增大代码的覆盖率,提高代码的质量,发现代码中隐藏的问题。

  白盒测试的缺点有:

  (1)程序运行会有很多不同的路径,不可能测试所有的运行路径;

  (2)测试基于代码,只能测试开发人员做的对不对,而不能知道设计的'正确与否,可能会漏掉一些功能需求;

  (3)系统庞大时,测试开销会非常大。

  5、 根据自己的理解回答什么是软件测试,软件测试分为哪几个阶段。(初级)(5分)

  答:软件测试是一个为了寻找软件中的错误而运行软件的过程,一个成功的测试是指找到了迄今为止尚未发现的错误的测试。

  软件测试一般分为单元测试、集成测试和系统测试。

  6、 根据自己的理解什么是测试用例和测试规程,设计一个测试用例应当从哪几方面考虑?(中级)(10分)

  答:狭义的讲,一个测试用例就是测试人员用以测试被测软件的某个特性或特性组合的一组数据。这组数据可能是从用户处得来的实际的一组数据,也可能是测试人员专门设计出来的测试软件某些功能的一组数据。

  测试规程就是详细的对测试用例设计方法、测试方法、测试工具、测试环境和测试数据进行描述的文档,还可以包括能把某个或某一组测试用例应用到被测软件上完成某项测试的一系列的操作步骤。

  设计测试用例应当从以下几方面考虑:边界值,等价类划分,有效/无效值等。

  7、 什么是软件质量保证?软件质量保证人员与开发人员的关系如何?(高级) (10分)

  答:软件质量保证就是通过确保软件过程的质量,来保证软件产品的质量。

【软件测试面试题和答案】相关文章:

软件测试面试题10-31

关于五个常见软件测试面试题及答案12-09

测试面试题及答案07-22

银行测试面试题及答案08-06

软件测试类英文面试题12-09

常见的软件测试面试题参考12-09

C语言面试题和答案12-09

软件测试第2版课后答案12-08

客户服务经理面试题和答案12-09

小升初面试题及答案12-09