软件测试面试题以及面试技巧

软件测试面试题以及面试技巧
软件测试面试题以及面试技巧

一、填空

1、软件测试阶段的基本任务应当是根据软件开发各阶段的和程序的,精心设计一批“高产”的测试用例,利用这些测试用例,找出软件中潜藏的各种错误和缺陷。

2、测试用例不仅要选用合理的测试输入数据,还需要选用不合理的测试输入数据,这样能更多地,提高程序的可靠性。对于不合理的测试输入数据,程序应,并给出相应的提示。

3、动态测试指通过发现错误。对软件产品进行动态测试时使用黑盒测试法和法。

4、静态测试指不在机器上运行,而是采用和的手段对程序进行检测。

5、黑盒测试依据,检查程序是否满足。因此,黑盒测试由称为功能测试或测试。

6、白盒测试以检查处理过程的细节为基础,对程序中尽可能多的进行测试,检查内部和是否有错,程序的与预期的状态是否一致。

7、在基本路径测试中,独立路径是指包括一组以前没有处理过的的一条路径。从程序图来看,一条独立路径是至少包含有一条的边的路径。

8、在单元测试中,驱动模块的作用是用来模拟被测模块的。它的工作是接受,以上层模块调用被测模块的形式被测模块,接收被测模块的并输出。

9、在单元测试中,桩模块用来代替被测模块的。其作用是的信息。

10、错误的群集现象是指模块错误发现率与模块的残留错误数成关系。

二、选择题

1、在软件测试中,下面说法中错误的是( )。

A. 测试是为了发现程序中的错误而执行程序的过程

B. 测试是为了表明程序是正确的

C. 好的测试方案是极可能发现迄今为止尚未发现的错误的方案

D. 成功的测试是发现了至今为止尚未发现的错误的测试

2、软件测试的目的是( )。

A. 试验性运行软件

B. 发现软件错误

C. 证明软件正确

D. 找出软件中全部错误

3、软件测试用例主要由测试输入数据和( )两部分组成。

A. 测试计划

B. 测试规则

C. 测试的预期结果

D. 以往测试记录分析

4、与设计测试用例无关的文档是( )。

A. 项目开发计划

B. 需求规格说明书

C. 软件设计说明书

D. 源程序

5、软件测试是软件质量保证的主要手段之一,测试的成本已超过( )的30%以上。因此,提高测试的有效性非常重要。

A. 软件开发成本

B. 软件维护成本

C. 软件开发成本和维护成本

D. 软件研制成本

6、“高产”的测试是指( )。

A. 用适量的测试用例说明被测试程序正确无误

B. 用适量的测试用例说明被测试程序符合相应的要求

C. 用适量的测试用例发现被测试程序尽可能多的错?

D. 用适量的测试用例纠正被测试程序尽可能多的错误

7、如果想要进行成功的测试,为其设计测试用例主要依赖于( )。

A. 黑盒测试方法

B. 测试人员的经验

C. 白盒测试方法

D. 错误推测法

8、使用白盒测试方法时,确定测试数据应根据( )和指定的覆盖标准。

A. 程序的内部结构

B. 程序的复杂性

C. 使用说明书

D. 程序的功能

9、在用逻辑覆盖法设计测试用例时,有语句覆盖、分支覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖和路径覆盖等。其中( )是最强的覆盖准则。

A. 语句覆盖

B. 条件覆盖

C. 判定-条件覆盖

D. 路径覆盖

10、在设计测试用例时,( )是用得最多的一种黑盒测试方法。

A. 等价类划分

B. 边界值分析

C. 因果图

D. 功能图

11、在黑盒测试中,着重检查输入条件的组合的测试用例设计方法是( )。

A. 等价类划分

B. 边界值分析

C. 错误推测法

D. 因果图法

12、从下列叙述中,能够与软件开发各阶段,如需求分析、设计、编码相对应的软件测试是( )。

A. 组装测试、确认测试、单元测试

B. 单元测试、组装测试、确认测试

C. 单元测试、确认测试、组装测试

D. 确认测试、组装测试、单元测试

13、单元测试将根据在( )阶段中产生的规格说明进行。

A. 可行性研究与计划

B. 需求分析

C. 概要设计

D. 详细设计

14、组装测试计划是在( )阶段制定的。

A. 可行性研究与计划

B. 需求分析

C. 概要设计

D. 详细设计

15、确认测试计划是在( )阶段制定的。

A. 可行性研究与计划

B. 需求分析

C. 概要设计

D. 详细设计

16、软件的组装测试最好是由( )承担,以提高组装测试的效果。

A. 该软件的设计者

B. 该软件开发组的负责人

C. 该软件的编程者

D. 不属于该开发组的人员

17、( )是简化了的模拟较低层次模块功能的虚拟子程序。

A. 过程

B. 函数

C. 仿真

D. 桩

18、( )是指为查明程序中的错误和缺陷,可能使用的工具和手段。

A. 调试技术

B. 测试技术

C. 跟踪法

D. 动态测试

19、从已发现故障的存在到找到准确的故障位置并确定故障的性质,这一过程称为( )。

A. 错误检测

B. 故障排除

C. 调试

D. 测试

20、在程序设计的过程中应为程序调试做好准备,主要体现在( )方面。

A. 采用模块化、结构化的程序设计方法设计程序

B. 编写程序时要为程序调试提供足够的灵活性

C. 根据程序调试的需要,选择并安排适当的中间结果输出和必要的断?

D. 以上全是

21、统计资料表明,软件测试的工作量占整个软件开发工作量的( )。

A. 30%

B. 70%

C. 40%~50%

D. 95%

22、软件测试计划是一些文档,它们描述了( )。

A. 软件的性质

B. 软件的功能和测试用例

C. 软件的规定动作

D. 对于预定的测试活动将要采取的手段

23、IBM公司的统计资料表明,使用静态测试的方法最高可以查出在测试中查出的全部软件错误的( )。

A. 80%

B. 70%

C. 50%

D. 35%

24、黑盒测试方法的优点是( )。

A. 可测试软件的特定部位

B. 能站在用户立场测试

C. 可按软件内部结构测试

D. 可发现实现功能需求中的错误

25、白盒测试方法的优点是( )。

A. 可测试软件的特定部位

B. 能站在用户立场测试

C. 可按软件内部结构测试

D. 可发现实现功能需求中的错误

26、等价类划分完成后,就可得出( ),它是确定测试用例的基础。

A. 有效等价类

B. 无效等价

C. 等价类表

D. 测试用例集

27、由因果图转换出来的( )是确定测试用例的基础。

A. 判定表

B. 约束条件表

C. 输入状态表

D. 输出状态表

三、选择填空题

1、从供选择的答案中选出应填入下列( )中的字句。

软件测试的目的是( A )。为了提高测试的效率,应该( B )。使用白盒测试方法时,确定测试数据应根据( C )和指定的覆盖标准。与设计测试数据无关的文档是( D )。

软件的集成测试工作最好由( E )承担,以提高集成测试的效果?BR>供选择的答案:

A.①评价软件的质量②发现软件的错误

③找出软件中的所有错误④证明软件是正确的

B.①随机地选取测试数据

②取一切可能的输入数据作为测试数据

③在完成编码以后制定软件的测试计划

④选择发现错误的可能性大的数据作为测试数据

C.①程序的内部逻辑②程序的复杂程度

③使用说明书④程序的功能

D.①该软件的设计人员②程序的复杂程度

③源程序④项目开发计划

E.①该软件的设计人员②该软件开发组的负责人

③该软件的编程人员④不属该软件开发组的软件人员

2、从供选择的答案中选出应填入下列( )中的字句。

为了把握软件开发各个环节的正确性和协调性,人们需要进行( A )和( B )工作。( A )的目的是想证实在一给定的外部环境中软件的逻辑正确性。它包括( C )和( D ),( B )则试图证明在软件生存期各个阶段,以及阶段间的逻辑( E )、( F )和正确性。

供选择的答案:

A, B.①操作②确认③验证④测试⑤调试

C, D.①用户的确认②需求规格说明的确认

③程序的确认④测试的确认

E, F.①可靠性②独立性③协调性④完备性⑤扩充性

3、从供选择的答案中选出应填入下列( )中的字句。

测试过程需要三类输入:( A )、( B )和( C )。请选择正确的答案填入下图中以完成测试信息处理的全过程。

供选择的答案?

A~C.①接口选择②软件配置③硬件配置

④测试配置⑤测试环境⑥测试工具

D~ F.①排错②可靠性分析③结果分析④数据分类

4、请从供选择的答案中选出应填入下列()中的字句。

程序的三种基本控制结构是( A )。它们的共同点是( B )。结构化程序设计的一种基本方法是( C )。软件测试的目的是( D )。软件调试的目的是( E )。

供选择的答案:

A.①过程,子程序,分程序②顺序,条件,循环

③递归,堆栈,队列④调用,返回,转移

B.①不能嵌套使用②只能用来写简单的程序

③已经用硬件实现④只有一个入口和一个出口

C.①筛选法②递归法③归纳法④逐步求精法

D.①证明程序中没有错误②发现程序中的错误

③测量程序的动态特性④检查程序中的语法错误

E.①找出错误所在并改正之②排除存在错误的可能性

③对错误性质进行分类④统计出错的次数

5、从供选择的答案中选出同下列各条叙述关系最密切的字句。

(1) 对可靠性要求很高的软件,例如操作系统,由第三者对源代码进行逐行检查。

(2) 已有的软件被改版时,由于受到变更的影响,改版前正常的功能可能发生异常,性能也可能下降。因此,对变更的软件进行测试是必要的。

(3) 在意识到被测试模块的内部结构或算法的情况下进行测试。

(4) 为了确认用户的需求,先做出系统的主要部分,提交给用户试用。

(5) 在测试具有层次结构的大型软件时,有一种方法是从上层模块开始,由上到下进行测试。此时,有必要用一些模块替代尚未测试过的下层模块。

供选择的答案:

A~E:①仿真器②代码审查③模拟器④桩

⑤驱动器⑥域测试⑦黑盒测试⑧原型

⑨白盒测试⑩退化测试

6、从供选择的答案中选出应填入下面叙述的()内的正确答案。

软件测试方法可分为黑盒测试法和白盒测试法两种。

黑盒测试法是通过分析程序的( A )来设计测试用例的方法。除了测试程序外,它还适用于对( B )阶段的软件文档进行测试。

白盒测试法是根据程序的( C )来设计测试用例的方法。除了测试程序外,它也适用于对( D )阶段的软件文档进行测试。

白盒法测试程序时常按照给定的覆盖条件选取测试用例。( E )覆盖比( F )覆盖严格,它使得每一个判定的每一条分支至少经历一次。(G )覆盖既是判定覆盖,又是条件覆盖,但它并不保证使各种条件都能取到所有可能的值。(H )覆盖比其他条件都要严格,但它不能保证覆盖程序中的每一条路

径?BR> 单元测试一般以(I )为主,测试的依据是(J )。

供选择的答案:

A, C:①应用范围②内部逻辑③功能④输入数据

B, D:①编码②软件详细设计③软件总体设计④需求分析

E~H:①语句②判定③条件④判定/条件

⑤多重条件⑥路径

I:①白盒法②黑盒法

J:①模块功能规格说明②系统模块结构图③系统需求规格说明

7、从供选择的答案中选出应填入下面叙述的()内的正确答案。

集成测试也叫做( A )或( B )。通常,在( C )的基础上,将所有模块按照设计要求组装成为系统。子系统的集成测试特别称为?nbsp; D ),它所做的工作是要找出子系统和系统需求规格说明之间的( E )。需要考虑的问题是:在把各个模块连接起来的时侯,穿越模块接口的数据是否会( F );一个模块的功能是否会对另一个模块的功能产生不利的影响;各个(G )组合起来,能否达到预期要求的(H );(I )是否有问题;单个模块的误差累积起来是否会放大。

供选择的答案:

A~D.①单元测试②部件测试③组装测试

④系统测试⑤确认测试⑥联合测试

E~I.①子功能②丢失③父功能

④局部数据结构⑤全局数据结构⑥不一致

⑦一致

8、从供选择的答案中选出应该填入下列叙述的( )内的正确答案。

软件测试中常用的静态分析方法是( A )和( B )。( B )用于检查模块或子程序间的调用是否正确。分析方法(白盒方法)中常用的方法是( C )方法。非分析方法(黑盒方法)中常用的方法是( D )方法和( E )方法。( E )方法根据输出对输入的依赖关系设计测试用例。

供选择的答案:

A~B:①引用分析②算法分析③可靠性分析④效率分析

⑤接口分析⑥操作分析

C~E:①路径测试②等价类③因果图④归纳测试

⑤综合测试⑥追踪⑦深度优先⑧调试

⑨相对图

9、从供选择的答案中选出应填入下面叙述的()内的正确答案。

等价类划分是一种典型的( A )方法,也是一种非常实用的重要的测试方法。使用这一方法,完全不考虑程序的( B )。用所有可能输入的数据来测试程序是不可能的,只能从全部可供输入的数据中选择一

个( C )进行测试。( D )是指某个输入域的集合,在该集合中,各个输入数据对于揭露程序中的错误是( E )。

供选择的答案:

A:①白盒测试方法②黑盒测试方法

B:①内部结构②外部环境③顺序④流程

C~E:①全集②子集③等效?BR> ④不同的⑤等价类⑥典型集

10、从供选择的答案中选出应填入下面叙述的()内的正确答案。

①黑盒测试方法的缺点是( )和( )。

A. 不可测试软件的特定部位

B. 不能发现功能需求中的错误

C. 无法检验软件的外部特性

D. 无法测试未实现功能需求的软件的内部缺陷

②白盒测试方法的缺点是( )和( )。

A. 不可测试软件的特定部位

B. 不能发现功能需求中的错误

C. 无法检验软件的外部特性

D. 无法测试未实现功能需求的软件的内部缺陷

四、问答计算题

1、从下列关于软件测试的叙述中,选出5条正确的叙述。

(1) 用黑盒法测试时,测试用例是根据程序内部逻辑设计的。

(2) 尽量用公共过程或子程序去代替重复的代码段。

(3) 测试是为了验证该软件已正确地实现了用户的要求。

(4) 对于连锁型分支结构,若有n个判定语句,则有2n条路径。

(5) 尽量采用复合的条件测试,以避免嵌套的分支结构?BR> (6) GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁。

(7) 发现错误多的程序模块,残留在模块中的错误也多。

(8) 黑盒测试方法中最有效的是因果图法。

(9) 在做程序的单元测试时,桩(存根)模块比驱动模块容易编写。

(10) 程序效率的提高主要应通过选择高效的算法来实现。

2、对小的程序进行穷举测试是可能的,用穷举测试能否保证程序是百分之百正确呢?

3、在任何情况下单元测试都是可能的吗?都是需要的吗?

4、如图所示的程序有三条不同的路径。分别表示为L1(a→b)、L2(a→c→d)、L3(a→c→e),或简写为ace、abd、abe及acd。根据判定覆盖、条件覆盖、判定–条件覆盖、条件组合覆盖和路径覆盖等五种覆盖标准,从供选择的答案中分别找出满足相应覆盖标准的最小测试用例组。(用①~ ⑩回答)

供选择的答案:

①x = 90, y = 90②x = 50, y = 50

③x = 90, y = 90④x = 90, y = 70

x = 50, y = 50x = 40, x = 90

⑤x = 90, y = 90⑥x = 90, y = 90

x = 50, y = 50x = 70, y = 90

x = 90, y = 70x = 50, y = 50

⑦x = 90, y = 90⑧x = 90, y = 90

x = 50, y = 50x = 50, y = 50

x = 80, y = 70x = 90, y = 50

x = 70, y = 90x = 80, y = 80

⑨x = 90, y = 90⑩x = 90, y = 90

x = 90, y = 70x = 80, y = 80

x = 90, y = 30x = 90, y = 70

x = 70, y = 90x = 90, y = 30

x = 30, y = 90x = 70, y = 90

x = 70, y = 70x = 30, y = 90

x = 50, y = 50x = 70, y = 70

x = 50, y = 50

5、在白盒测试用例设计中,有语句覆盖、分支覆盖、条件覆盖、路径覆盖等,其中( A )是最强的覆盖准则。为了对如下图所示的程序段进行覆盖测试,必须适当地选取测试用例组。若x, y是两个变量,可供选择的测试用例组共有Ⅰ、Ⅱ、Ⅲ、Ⅳ四组,如表中给出,则实现判定覆盖至少应采取的测试用例组是( B )或( C );实现条件覆盖至少应采取的测试用例组是( D );实现路径覆盖至少应采取的测试用例组是( E )或( F )。

供选择的答案

A:①语句覆盖②条件覆盖③判定覆盖④路径覆盖

B~F:①Ⅰ和Ⅱ组②Ⅱ和Ⅲ组③Ⅲ和Ⅳ组④Ⅰ和Ⅳ组

⑤Ⅰ、Ⅱ、Ⅲ组⑥Ⅱ、Ⅲ、Ⅳ组⑦Ⅰ、Ⅲ、Ⅳ组

⑧Ⅰ、Ⅱ、Ⅳ组

6、下面是快速排序算法中的一趟划分算法,其中datalist是数据表,它有两个数据成员:一是元素类型为Element的数组V,另一个是数组大小n。算法中用到两个操作,一是取某数组元素V[i]的关键码操作getKey ( ),一是交换两数组元素内容的操作Swap( ):

int Partition ( datalist &list, int low, int high ) {

//在区间[ low, high ]以第一个对象为基准进行一次划分,k返回基准对象回放位置。

int k = low; Element pivot = list.V[low]; //基准对象

for ( int i = low+1; i <= high; i++ ) //检测整个序列,进行划分

if ( list.V[i].getKey ( ) < pivot.getKey( ) && ++ k != i )

Swap ( list.V[k], list.V[i] );//小于基准的交换到左侧去

Swap ( list.V[low], list.V[k] );//将基准对象就位

return k; //返回基准对象位置

}

(1) 试画出它的程序流程图;

(2) 试利用路径覆盖方法为它设计足够的测试用例(循环次数限定为0次,1次和2次)。

7、下面是选择排序的程序,其中datalist是数据表,它有两个数据成员:一是元素类型为Element的数组V,另一个是数组大小n。算法中用到两个操作,一是取某数组元素V[i]的关键码操作getKey ( ),一是交换两数组元素内容的操作Swap( ):

void SelectSort ( datalist & list ) {

//对表list.V[0]到list.V[n-1]进行排序, n是表当前长度。

for ( int i = 0; i < list.n-1; i++ ) {

int k = i; //在list.V[i].key到list.V[n-1].key中找具有最小关键码的对象

for ( int j = i+1; j < list.n; j++)

if ( list.V[j].getKey ( ) < list.V[k].getKey ( ) ) k = j;

//当前具最小关键码的对象

if ( k != i ) Swap ( list.V[i], list.V[k] );//交换

}

}

(1) 试计算此程序段的McCabe复杂性;

(2) 用基本路径覆盖法给出测试路径;

(3) 为各测试路径设计测试用例。

8、根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。

“一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。”

9、设要对一个自动饮料售货机软件进行黑盒测试。该软件的规格说明如下:

“有一个处理单价为1元5角钱的盒装饮料的自动售货机软件。若投入1元5角硬币,按下“可乐”、“雪碧”或“红茶”按钮,相应的饮料就送出来。若投入的是2元硬币,在送出饮料的同时退还5角硬币。”

(1) 试利用因果图法,建立该软件的因果图;

(2) 设计测试该软件的全部测试用例。

11、应该由谁来进行确认测试?是软件开发者还是软件用户?为什么?

第一题:我认为需要在测试前需要先写好测试计划,其中最重要的是本次测试使用的测试方法、使用的测试工具、测试环境。人员方面需要进行人员及进度的安排,每个测试阶段后的输出工件,还要有风险评估。在测试前将这些准备工作做到位,这样在测试的时候就会比较有条理。

第二题:控制测试质量,我认为最好是做好测试用例的设计,这样可以对测试的覆盖率进行控制。

补充:如果时间充裕的话可以在设计用例后对其进行评审,这样可以提高测试质量。不过这个在实际的工作当中一般实现不了。。。。

下面列出的是网上的一个软测笔试题,好多单位在笔试的时候都会copy下来作为笔试题,我至少遇到两次了,其他的笔试题还有,但不一一列出了。

一、判断题(每题1分,12 分,正确的√,错误的╳)

1.软件测试的目的是尽可能多的找出软件的缺陷。()

2.Beta 测试是验收测试的一种。()

3.验收测试是由最终用户来实施的。()

4.项目立项前测试人员不需要提交任何工件。()

5.单元测试能发现约80%的软件缺陷。()

6.代码评审是检查源代码是否达到模块设计的要求。()

7.自底向上集成需要测试员编写驱动程序。()

8.负载测试是验证要检验的系统的能力最高能达到什么程度。()

9.测试人员要坚持原则,缺陷未修复完坚决不予通过。()

10.代码评审员一般由测试员担任。()1

11.我们可以人为的使得软件不存在配置问题。()

12.集成测试计划在需求分析阶段末提交。()

二、不定项选择题(每题2 分,10分)

1.软件验收测试的合格通过准则是:()

A.软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。

B.所有测试项没有残余一级、二级和三级错误。

C.立项审批表、需求分析文档、设计文档和编码实现一致。

D.验收测试工件齐全。

2.软件测试计划评审会需要哪些人员参加?()

A.项目经理

B.SQA 负责人

C.配置负责人

D.测试组

3.下列关于alpha 测试的描述中正确的是:()

A.alpha 测试需要用户代表参加

B.alpha 测试不需要用户代表参加

C.alpha 测试是系统测试的一种

D.alpha 测试是验收测试的一种

4.测试设计员的职责有:()

A.制定测试计划

B.设计测试用例

C.设计测试过程、脚本

D.评估测试活动

5.软件实施活动的进入准则是:()

A.需求工件已经被基线化

B.详细设计工件已经被基线化

C.构架工件已经被基线化

D.项目阶段成果已经被基线化

三、填空题(每空1分,24 分)

1.软件验收测试包括(正式验收测试)、(非正式验收测试和Alpha测试)、(Beta 测试)三种类型。

2.系统测试的策略有功能测试、(性能测试)、(负载测试)、(压力测试)、易用性测试、(容量测试)、(强度测试)、(兼容性测试又称)、(本地化测试)、(BVT测试)、(裸机测试)、(安全性测试)、()、(容错性测试)、(恢复测试)、()等15 种方法。

3.设计系统测试计划需要参考的项目文档有(需求规格说明书)、()和迭代计划。

4.对面向过程的系统采用的集成策略有()、()两种。

5.通过画因果图来写测试用例的步骤为、、、及把因果图转换为状态图共五个步骤。

四、简答题(共37分)

1.阶段评审与同行评审的区别。(4 分)

2 .什么是软件测试。(

3 分)

答:通过人工或自动化手段对系统进行测试,目的是为了验证系统是否满足预定功能或者是为了弄清楚实际结果与预期结果之间的差别。

3 .简述集成测试的过程。(5 分)

答:将通过单元测试的单元模块按照设计要求组合起来再进行测试。重点检查程序接口处是否有问题。

测试评估,并且进行全程的缺陷跟踪。?测试用例执行?测试开发?测试设计?过程:首先进行集成测试的测试计划

4 .怎样做好文档测试?(4 分)

答:文档测试要注意一下几点:文档的读者群、文档的术语、文档的正确性、文档的完整性、文档的一致性、文档的易用性、样例与示例、文档的语言

5.白盒测试有那几种方法?(6 分)

答:白盒测试方法分为:静态测试和动态测试

静态测试方法:①编码标准与准则②走查③审查④评审

动态测试方法:①语句覆盖②判定覆盖③条件覆盖④判定-条件覆盖⑤条件组合覆盖⑥路径覆盖

⑦条件组合+路径覆盖

6.系统测试计划是否需要同行评审,为什么?(4 分)

答:系统测试计划需要进行同行评审,因为如果对一个系统长时间进行测试可能会出现测试疲劳甚至出现

对系统的免疫现象,因此可以进行同行评审,减少对相同系统的疲劳测试。7.Alpha 测试与beta 测试的区别。(4 分)

8 .比较负载测试、容量测试和强度测试的区别。(6 分)

9 .测试结束的标准是什么?(3 分)

面试过程技巧

面试技巧…………………………………………

面试前的准备:

面试前要先预想主考官会问的问题,并准备谨慎而有条理地回答。事先有准备的人,表情和肢体语言比较笃定从容,且具备较好的回应能力。大学毕业生由于缺乏面试经验,可事先找朋友练习面试技巧。面试时最好提前10分钟到达地点,先去洗手间放松一下,整理一下思路,还可最后检查一下自己的仪容,整理因挤公车而弄乱的发型,女士还可趁机补补妆。

面试技巧…………………………………………

面试务必要准时,一进公司就是面试的开始,对人要客气有礼,秘书或接待人员都可能影响到你是否能得到这份工作。面试前应关掉手机和传呼机,若当着主考官的面关掉,更可显出你的诚恳。注意自己坐姿,节制不该有的小动作。与主考官保持视线的接触,但不要紧盯着对方的眼睛,眼神切勿乱瞟乱看。

面试技巧…………………………………………

面试应对:

仔细聆听对方的问题,审慎回答,不要太简略,切忌只回答"是的"、"好"、"对的"、"没问题"等无法使内容更生动的字句,要完整并举实例说明,但要避免冗长。

若对应征公司不了解,不妨坦诚相告,以免说错而得不偿失。

当对方问你"你能为公司做什么时",若无法马上回答,可先请问对方这份工作上最重要的内容是什么,你好就这些部分来回答。

当对方问及你的专长时,别忘了针对专业特性来回答。对自己的能力和专长不需刻意强调,但也不必大过谦让。

主考提及你是否有问题时,一定要把握机会发问,以表现自己对这份工作的强烈兴趣,但要就工作内容、人事规章等范围发问,不要离题

太远。

面试技巧…………………………………………

面试结束后:

无论告辞时说些什么,要表现出信心坚定,给主试者一个深刻的印象。离开前应谢谢主试者给你面谈的机会。若面试时间较长,在面试结束时,可以赞扬主试者在面试过程中使你获益的特殊观点,还可寄封一封感谢信,(关于感谢信的写法,在千里马个人简历网上面有介绍),以加深对你的印象。

若你认为这份工作不适合你,可打电话或写一封措辞客气、亲切的信,告诉对方原因,切忌从此人间蒸发

软件测试工程师笔试题及答案

测试工程师笔试题 一、计算机知识(30分) 1、在Linux系统中,一个文件的访问权限是755,其含义是什么 参考答案: 755表示该文件所有者对该文件具有读、写、执行权限,该文件所有者所在组用户及其他用户对该文件具有读和执行权限。 2、Linux中,如何从root用户切换到普通用户 参考答案:su su user1 切换到user1,但切换后的当前目录还是root访问的目录 su – user1 切换到user1,并且当前目录切换到user1的根目录下(/home/user1/) 3、简述一下C/S模式和B/S模式的区别 参考答案: c/s 是客户端/服务器架构 b/s 是浏览器/服务器架构 C/S模式有以下特点: S模式将应用与服务分离,系统具有稳定性和灵活性 S模式配备的是点对点的结构模式,适用于局域网,有可靠的安全性 3.由于客户端实现与服务器端的直接连接,没有中间环节,因此响应速度快 4.在C/S模式中,作为客户机的计算机都要安装客户机程序,一旦软件系统升级,每台客户机都要安装客户机程序,系统升级和维护较为复杂 B/S模式有以下特点: 1.系统开发、维护、升级方便 每当服务器应用程序升级时,只要在服务器上升级服务应用程序即可,用户计算机上的浏览器软件不需要修改,系统开发和升级维护方便 S模式具有很强的开放性 在B/S模式下,用户通过通用的浏览器进行访问,系统开放性好 S模式的结构易于扩展 由于Web的平台无关性,B/S模式的结构可以任意扩展,可以从包含一台服务器和几个用户的小型系统扩展成为拥有成千上万个用户的大型系统 4.用户使用方便 B/S模式的应用软件都是基于Web浏览器的,而Web浏览器的界面是类似的。对于无用户交换功能的页面。用户接触的界面都是一致的,用户使用方便 4、Windows操作系统中PATH环境变量的作用是什么 参考答案: PATH是Windows操作系统环境变量,PATH作用是用户在命令行窗口执行一个命令,则在PATH变量设置的目录下依次寻找该命令或对应的执行文件,若找到,则执行,若没有找到,则命令行窗口返回无效命令。 5、TCP和UDP有什么区别 参考答案: TCP-有连接,所以握手过程会消耗资源,过程为可靠连接,不会丢失数据,适合大数据量交换UDP-非可靠连接,会丢包,没有校验,速度快,无须握手过程

一套精细软件测试面试题(问题加答案)

周五面试题: 1.软件测试的定义,评价测试工作是枯燥反复的,你是如何理解的?软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。执行测试用例后,需要跟踪故障,以确保开发的产品适合需求。 软件测试工作并非枯燥乏味。简而言之软件测试工作是一种破坏程序的有价值的行为,工作性质鼓励我们这种破坏行为。另一方面他是一种正向思维与逆向思维斗争的工作,与开发相辅相成,相互依存、制约。是一种让我们乐于学习和探索的趣味工作。 2.画出你所知道的软件生命周期模型,及软件测试模型? <软件生命周期> 略:软件测试模型V模型、W模型详见第三本书----《国际软件测试概论》 3.什么是兼容性测试?兼容性测试侧重哪些方面? 什么是兼容性测试: 一般来说,兼容性指能同时容纳多个方面,在计算机术语上兼容是指几个硬件之间、几个软件之间或是软硬件之间的相互配合程度。 具体的讲,兼容性测试是指测试在特定的硬件平台上、不同的应用程序之间、不同的操作系统平台上、不同的网络等环境中是否能很好的运行的测试。 兼容性测试侧重哪些方面: 兼容测试的重点是,对兼容环境的分析。通常,是在运行软件的环境不是很确定的情况下,才需要做兼容。根据软件运行的需要,或者根据需求文档,一般都能够得出用户会在什么环境下使用该软件,把这些环境整理成表单,就得出做兼容测试的兼容环境了。 4.写出你以前的项目或工作中,最让你茫然的事情,你是怎么处

理的? 回答:在我以前的项目和工作中,让我最茫然的事情是软件测试需求老在变化着,导致测试工作不能在预期的时间内完成。 面对这样的情况我的处理方式如下: (1)尽早与承担该项目风险的负责人接触,以便了解需求会怎样改变,从而可以尽早地改变测试计划和策略。 (2)如果在对应用程序进行初始设计时多考虑一些适应性,那么以后在发生需求的改变时就不需要再为改变做很多事情了。 (3)只要有可能,就应使用快速原型(rapid prototyping),以帮助用户确认他们的需求,从而减少变更。 (4)在项目的时间表中应当留出余量,以应付可能出现的变更。 (5)尽量把新的需求纳入应用软件的“下一版”,而把原始需求作为“第一版”。 (6)通过谈判,把易于实现的新的变更列入项目,而把难于实现的新需求列入该应用软件的以后的版本。 (7)要确保让客户和管理人员了解变更对进度表的影响、所带来的风险、以及因变更所引起的大量资金消耗。 (8)对变更进行适当的风险分析,以减少回归测试的要求。 5.你的朋友怎样评价你? 回答: 跟朋友们在一起的时候,朋友都常常说我为人诚实、稳重、团结他人、善于帮助他人、关心家人、爱好学习。但是朋友们都说我也有一些缺点就是做事儿比较心急,凡是想着第一时间将自己手里的事情尽快完成,就怕担心后面还有一些需要解决的问题;另外就是凡事都想着拿第一,好胜之心比较强烈。 6.据说有人给酒肆的老板娘出了一个难题:此人明明知道店里只有两个舀酒的勺子,分别能舀7两和11两酒,却硬要老板娘卖给他2两酒。聪明的老板娘毫不含糊,用这两个勺子在酒缸里舀酒,并倒来倒去,居然量出了2两酒,聪明的你能做到吗? 11-7=4(11两勺舀满,倒入7两勺直到满,则11两勺内剩4两,7两勺清空,把11两勺内剩的4两倒入7两勺内,则7两勺内少3两) 11-3=8(11两勺内装满,倒入装有4两的7两勺内,则11两勺内剩8两,清空7两勺) 8-7=1(把11两勺内剩的8两倒入7两勺内直到满,则11两勺内剩1两,清空7两勺,把11两勺内剩的1两倒入7两勺内)

软件测试工程师笔试题目和答案

一、判断题 1.软件测试的目的是尽可能多的找出软件的缺陷。(Y) 2.Beta测试是验收测试的一种。(Y) 3.验收测试是由最终用户来实施的。(N) 4.项目立项前测试人员不需要提交任何工件。(Y) 5.单元测试能发现约80%的软件缺陷。(Y) 6.代码评审是检查源代码是否达到模块设计的要求。(N) 7.自底向上集成需要测试员编写驱动程序。(Y) 8.负载测试是验证要检验的系统的能力最高能达到什么程度。(N) 9.测试人员要坚持原则,缺陷未修复完坚决不予通过。(N) 10.代码评审员一般由测试员担任。(N) 11.我们可以人为的使得软件不存在配置问题。(N) 12.集成测试计划在需求分析阶段末提交。(N) 二、选择题 1.软件验收测试的合格通过准则是:(ABCD) A.软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。B.所有测试项没有残余一级、二级和三级错误。 C.立项审批表、需求分析文档、设计文档和编码实现一致。 D.验收测试工件齐全。 2.软件测试计划评审会需要哪些人员参加?(ABCD) A.项目经理 B.SQA负责人

D.测试组 3.下列关于alpha测试的描述中正确的是:(AD) A.alpha测试需要用户代表参加 B.alpha测试不需要用户代表参加 C.alpha测试是系统测试的一种 D.alpha测试是验收测试的一种 4.测试设计员的职责有:(BC) A.制定测试计划 B.设计测试用例 C.设计测试过程、脚本 D.评估测试活动 5.软件实施活动的进入准则是:(ABC) A.需求工件已经被基线化 B.详细设计工件已经被基线化 C.构架工件已经被基线化 D.项目阶段成果已经被基线化 三、填空题 1.软件验收测试包括:正式验收测试,alpha测试,beta测试。 2.系统测试的策略有:功能测试,性能测试,可靠性测试,负载测试,易用性测试,强度测试,安全测试,配置测试,安装测试,卸载测试,文挡测试,故障恢复测试,界面测试,容量测试,兼容性测试,分布测试,可用性测试,(有的可以合在一起,分开写只要写出15就满分哦) 3.设计系统测试计划需要参考的项目文挡有:软件测试计划,软件需求工件和迭代计划。

软件测试工程师经典面试题目

软件测试工程师面试题汇总 测试技术面试题 (5) 1、什么是兼容性测试?兼容性测试侧重哪些方面? (5) 2、我现在有个程序,发现在Windows上运行得很慢,怎么判别是程序存在问题还是软硬件系统存在问题? (5) 3、测试的策略有哪些? (5) 4、正交表测试用例设计方法的特点是什么? (5) 5、描述使用bugzilla缺陷管理工具对软件缺陷(BUG)跟踪的管理的流程? (5) 6、你觉得bugzilla在使用的过程中,有什么问题? (5) 7、描述测试用例设计的完整过程? (6) 8、单元测试的策略有哪些? (6) 9、LoadRunner分哪三部分? (6) 10、LoadRunner进行测试的流程? (6) 什么是并发?在lordrunner中,如何进行并发的测试?集合点失败了会怎么样? (6) 12、使用QTP做功能测试,录制脚本的时候,要验证多个用户的登录情况/查询情况,如何操作? (6) 13、QTP中的Action有什么作用?有几种? (6) 14、TestDirector有些什么功能,如何对软件测试过程进行管理? (7) 15、你所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型的区别与联系(如功能测试、性 能测试......)? .. (7) 16、条软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量的软件缺陷(Bug)记录? (8) 17、Beta测试与Alpha测试有什么区别? (8) 18、软件的评审一般由哪些人参加?其目的是什么? (8) 19、测试活动中,如果发现需求文档不完善或者不准确,怎么处理? (8) 20、阶段评审与项目评审有什么区别? (8) 21、阐述工作版本的定义? (8) 22、什么是桩模块?什么是驱动模块? (8) 23、什么是扇入?什么是扇出? (8) 24、你认为做好测试计划工作的关键是什么? (8) 25、你认为做好测试用例工作的关键是什么? (9) 26、简述一下缺陷的生命周期? (9) 27、软件的安全性应从哪几个方面去测试? (9) 28、软件配置管理工作开展的情况和认识? (9) 29、你觉得软件测试通过的标准应该是什么样的? (10) 30、引入测试管理的含义? (10) 31、一套完整的测试应该由哪些阶段组成? (10) 32、单元测试的主要内容? (10) 33、集成测试也叫组装测试或者联合测试,请简述集成测试的主要内容? (10) 34、简述集成测试与系统测试关系? (10) 35、软件测试的文档测试应当贯穿于软件生命周期的全过程,其中用户文档是文档测试的重点。那么软件系统 的用户文档包括哪些? (10) 36、软件系统中除用户文档之外,文档测试还应该关注哪些文档? (10) 37、简述软件系统中用户文档的测试要点? (11) 38、单元测试主要内容是什么? (11) 39、如何理解强度测试? (13) 40、如何理解压力、负载、性能测试测试? (13) 41、什么是系统瓶颈? (13) 42、文档测试主要包含什么内容? (13)

最新软件测试笔试

软件测试笔试题 一.测试用例设计题: 1.输入三个数据a,b,c,输入三个数构成三角形,测试a,b,c构成三角形,计算其面积(设计测试用例时面积不用实际计算出来,用X代替面积) 1)int a,b,c 2)1>a;b,c<100 3)int area 2.根据中国象棋中的棋子“马”的走向路径,画出因果图并形成判定表。 二.逻辑题 1.有3个黑帽子,2个白帽子,让三个人并排站成一排,给这三个人每个人都戴上帽子(最后一个人能看到前面两个人戴的帽子的颜色和样子,中间那个人能够看到 自己的左右两个人的帽子的颜色和样子,最前面的那个人什么也看不到),如果问最后那个人自己戴的什么颜色的帽子,他说不知道,那就继续问下一个人。 其实他们三个戴的都是黑色的帽子,最前面那个人知道自己戴的是什么颜色的帽子,为什么? 2.猴子身边有100根香蕉,离猴子家有50米,猴子把香蕉拿回家一次只能拿50根(多一根就会累死),猴子每走1米就吃掉一根,请问猴子到家能拿多少根香蕉? 三.其它 1.软件测试用例设计的关键是什么? 2.软件测试结束的标准是什么? 数据库测试通常都包括哪些方面? 数据库测试一般包括: 1. 数据库连接测试 2. 数据库的健壮性,容错性和恢复能力测试 3. 数据库的安全测试 4. 数据库的性能测试 5. 数据库的容量测试 6. 数据库对象的测试,包括定义的存储过程,视图,触发器,约束,规则等等,都要进行测试以保证功能完好 7. 数据库接口测试,包括数据项的修改操作 数据项的增加操作 数据项的删除操作 数据表增加满 数据表删除空 删除空表中的记录 数据表的并发操作 针对存储过程的接口测试 结合业务逻辑做关联表的接口测试 同样我们需要对这些接口考虑采用等价类、边界值、错误猜测等方法进行测试

[全]软件测试常见笔试题(附带答案)

软件测试常见笔试题(附带答案) 软件测试笔试题 一、选择题 1、对计算机软件和硬件资源进行管理和控制的软件是(D) A.文件管理程序 B.输入输出管理程序 C.命令出来程序 D.操作系统 2、在没有需求文档和产品说明书的情况下只有哪一种测试方法可以进行的(A) A.错误推测法测试 B.路劲分析测试 C.语句覆盖测试 D.条件覆盖测试 3、某测试人员通过执行测试软件测试的方法对当前功能进行了测试,该测试人员使用的测试方法为(C) A.静态测试

B.单元测试 C.黑盒测试 4、编写测试计划的目的是(ABC)多选题 A.使测试工作顺利进行 B.使项目参与人员沟通更舒畅 C.使测试工作更加系统化 D.软件工程以及软件过程的需要 E.软件过程规范化的要求 F.控制软件质量 5、关于软件测试与软件开发的认识,不正确的是(B) A.软件生命周期各个阶段都可能产生测试 B.软件测试是独立于软件开发的一个工作 C.软件开发的需求分析和设计阶段就应开始测试工作 D.测试越早进行,越有助于提高被测软件的质量 6、当一个应用程序窗口被最小化后该应用的程序将会出现一下哪种情况(D) A.被终止执行

B.继续在前台执行 C.被暂停执行 D.被转入后台执行 7、下列方法中,不属于黑盒测试的是?(A) A.基本路劲测试法 B.等价类测试法 C.边界值分析法 D.基于场景的测试方法 8、对于维护软件的人员来说,使用质量是【】的结果(C) A.功能性 B.可靠性 C.可维护性 D.效率 9、下列软件属性中,软件产品首要满足的应该是(A) A.功能需求 B.性能需求

C.可扩展性和灵活性 D.容错、纠错能力 10、单元测试中设计测试用例的依据是(D) A.概要设计规格说明书 B.用户需求规格说明书 C.项目计划说明书 D.详细设计规格说明书 二、判断题 1、单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测试。(√) 2、软件测试就是为了验证软件功能实现的是否正确,是否完成既定目标的活动,所以软件测试在软件工程的后期才开始具体的工作(×) 3、发现错误多的模块,残留在模块中的错误也多。( √) 4、测试人员在测试过程中发现一处问题,如果问题影响不大,而自己又可以修改,应立即将此问题正确修改,以加快、提高开发的进程。(×) 5、单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测试。

软件测试工程师笔试及面试经典试题(大集合)

笔试和面试是每个人都会遇到的问题,如何让你在笔试和面试之前做好充分准备,对笔试和面试的问题有充分的了解,做到知己知彼很重要,如果你想在面试中脱颖而出,请认真学习本篇文章 软件测试工程师经典笔试题及面试题 一、软件测试工程师经典笔试试题 一、判断题(每题1分,12 分,正确的√,错误的╳) 1.软件测试的目的是尽可能多的找出软件的缺陷。() 2.Beta 测试是验收测试的一种。() 3.验收测试是由最终用户来实施的。() 4.项目立项前测试人员不需要提交任何工件。() 5.单元测试能发现约80%的软件缺陷。() 6.代码评审是检查源代码是否达到模块设计的要求。() 7.自底向上集成需要测试员编写驱动程序。() 8.负载测试是验证要检验的系统的能力最高能达到什么程度。() 9.测试人员要坚持原则,缺陷未修复完坚决不予通过。() 10.代码评审员一般由测试员担任。() 11.我们可以人为的使得软件不存在配置问题。() 12.集成测试计划在需求分析阶段末提交。() 二、不定项选择题(每题2 分,10分) 1.软件验收测试的合格通过准则是:() A.软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。 B.所有测试项没有残余一级、二级和三级错误。 C.立项审批表、需求分析文档、设计文档和编码实现一致。 D.验收测试工件齐全。 2.软件测试计划评审会需要哪些人员参加?() A.项目经理 B.SQA 负责人 C.配置负责人 D.测试组 3.下列关于alpha 测试的描述中正确的是:() A.alpha 测试需要用户代表参加 B.alpha 测试不需要用户代表参加 C.alpha 测试是系统测试的一种 D.alpha 测试是验收测试的一种 4.测试设计员的职责有:() A.制定测试计划 B.设计测试用例 C.设计测试过程、脚本 D.评估测试活动 5.软件实施活动的进入准则是:() A.需求工件已经被基线化

一套比较完整的软件测试人员面试题

人力资源问题 你为什么选择软件测试行业 因为之前有了解软件测试这个行业,觉得他的发展前景很好。也对 根据你以前的工作经验描述一下软件开发、测试过程,由那些角色负责,你做什么 要有架构师、开发经理、测试经理、程序员、测试员 我在里面主要是负责所分到的模块执行测试用例。 结合你以前的学习和工作经验,你认为如何做好测试。 根据我以前的工作经验,我认为做好工作首先要有一个好的沟通,只有沟通无障碍了,才会有好的协作,才会有跟好的效率,再一个就是技术一定要过关,做测试要有足够的耐心,和一个良好的工作习惯,不懂的就问,实时与同事沟通这样的话才能做好测试工作。 你觉得测试最重要的是什么 尽可能的找出软件的错误 怎样看待加班问题 加班的话我没有太多的意见,但是我还是觉得如果能够合理的安排时间的话,不会有太多时候会加班的。如果一个很有个性的程序员认为自己的BUG不是BUG,怎么解决? 首先我要确定我所提的在我认为是不是bug,如果我认为是的话我会在他面前重现这个bug和他讲这是个bug,和他沟通,或者我会找到我的直系领导让他解决。 为什么在团队中要有测试 因为软件有错误,如果没有专业的测试人员很难发现软件的一些错误。 在测试时代学习自己最大的收获是什么? 在测试时代我除了学习了测试的知识外,还看到了老师们对待测试的一种态度,明白了做任何工作都要有沟通,做测试的也要有很好的沟通才可以做好。知道自己在项目组中的位置,和开发的关系。 你对未来的规划 我想在工作中慢慢的积累经验,使自己强大起来,能够担任更重要的职务。 自己优势及缺点 我的优点是有足够的耐心对待每一件事情,善于观察事物,承受压力的能力很强。缺点可能就是我不是很爱说话,习惯做不习惯说,但是和人沟通还是没有问题的。 你为什么选择测试时代不选择51testing 因为相对比来看测试时代价钱相对公道,师资也不错,还有一个原因就是在网上查了一下测试时代的口碑不错,也是网放心过来的原因。 13.请谈谈您对测试工作的理解 我认为测试工作是找出软件产品的错误, 14.你认为测试人员需要具备哪些素质? 我认为做测试的应该要有一定的协调能力,因为测试人员要经常与开发接触处理一些问题,如果处理不好的话会引起一些冲突这样的话工作上就会做不好。还有测试人员要有一定的耐心,有的时候做的测试很枯燥乏味的。除了要有耐心之外还要细心,不放过每一个可能的错误。 15.你为什么能够做测试这一行。 虽然说我的测试技术还不是很纯熟,但是我觉得我还是可以胜任软件测试这个工作的,因为做软件测试不仅是要求技术好,还要有一定的沟通能力,耐心、细心等外在的因素。综合起来看我认为我是胜任这个工作的。 1测试的目的是什么? 测试的目的是找出软件产品中的错误,是软件尽可能的符合用户的要求。

软件测试面试题与答案

软件测试面试题与答案尽供参考 一、判断题 1.软件测试的目的是尽可能多的找出软件的缺陷。(Y) 2.Beta测试是验收测试的一种。(Y) 3.验收测试是由最终用户来实施的。(N) 4.项目立项前测试人员不需要提交任何工件。(Y) 5.单元测试能发现约80%的软件缺陷。(Y) 6.代码评审是检查源代码是否达到模块设计的要求。(N) 7.自底向上集成需要测试员编写驱动程序。(Y) 8.负载测试是验证要检验的系统的能力最高能达到什么程度。(N) 9.测试人员要坚持原则,缺陷未修复完坚决不予通过。(N) 10.代码评审员一般由测试员担任。(N) 11.我们可以人为的使得软件不存在配置问题。(N) 12.集成测试计划在需求分析阶段末提交。(N) 二、选折 1.软件验收测试的合格通过准则是:(ABCD) A.软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。B.所有测试项没有残余一级、二级和三级错误。 C.立项审批表、需求分析文档、设计文档和编码实现一致。 D.验收测试工件齐全。 2.软件测试计划评审会需要哪些人员参加?(ABCD) A.项目经理 B.SQA负责人 C.配置负责人 D.测试组 3.下列关于alpha测试的描述中正确的是:(AD) A.alpha测试需要用户代表参加 B.alpha测试不需要用户代表参加 C.alpha测试是系统测试的一种 D.alpha测试是验收测试的一种 4.测试设计员的职责有:(BC) A.制定测试计划

B.设计测试用例 C.设计测试过程、脚本 D.评估测试活动 5.软件实施活动的进入准则是:(ABC) A.需求工件已经被基线化 B.详细设计工件已经被基线化 C.构架工件已经被基线化 D.项目阶段成果已经被基线化 三、添空 1.软件验收测试包括:正式验收测试,alpha测试,beta测试。 2.系统测试的策略有:功能测试,性能测试,可靠性测试,负载测试,易用性测试,强度测试,安全测试,配置测试,安装测试,卸载测试,文挡测试,故障恢复测试,界面测试,容量测试,兼容性测试,分布测试,可用性测试,(有的可以合在一起,分开写只要写出15就满分哦) 3.设计系统测试计划需要参考的项目文挡有:软件测试计划,软件需求工件和迭代计划。 4.对面向过程的系统采用的集成策略有:自顶向下,自底向上两种。 5.(这题出的有问题哦,详细的5步骤为~~)通过画因果图来写测试用例的步骤为: (1)分析软件规格说明描述中,哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符。 (2)分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的是什么关系?根据这些关系,画出因果图。 (3)由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号标明约束或限制条件。 (4)把因果图转换成判定表。 (5)把判定表的每一列拿出来作为依据,设计测试用例。 四、简答(资料是搜集整理的,感谢前辈的解题)无 1.区别阶段评审的与同行评审 同行评审目的:发现小规模工作产品的错误,只要是找错误; 阶段评审目的:评审模块阶段作品的正确性可行性及完整性 同行评审人数:3-7人人员必须经过同行评审会议的培训,由SQA指导 阶段评审人数:5人左右评审人必须是专家具有系统评审资格 同行评审内容:内容小一般文档< 40页,代码< 500行 阶段评审内容:内容多,主要看重点

软件测试基础(经典测试面试题答案)

软件测试基础教程 测试的基本概念 测试是软件生存周期中十分重要的一个过程,是产品发布、提交给最终用户前的稳定化阶段。 1、测试的分类: 从测试方法的角度可以分为手工测试和自动化测试。 手工测试:不使用任何测试工具,根据事先设计好的测试用例来运行系统,测试各功能模块。 自动化测试:利用测试工具,通过编写测试脚本和输入测试数据,自动运行测试程序。目前最常用的自动化测试工具是基于GUI的自动化测试工具,基本原理都是录制、回放技术。 从整体的角度可以分为单元测试、集成测试、系统测试、确认测试。 单元测试:是针对软件设计的最小单位—程序模块,进行正确性检验的测试工作。一般包括逻辑检查、结构检查、接口检查、出错处理、代码注释、输入校验、边界值检查。 单元测试的依据是系统的详细设计;一般由项目组开发人员自己完成。 集成测试:在单元测试的基础上,将所有模块按照设计要求组装进行测试。一般包括逻辑关系检查、数据关系检查、业务关系检查、模块间接口检查、外部接口检查。 系统测试:系统测试是在所有单元、集成测试后,对系统的功能及性能的总体测试。 确认测试:模拟用户运行的业务环境,运用黑盒测试方法,验证软件系统是否满足用户需求或软件需求说明书中指明的软件特性(功能、非功能)上的。 从测试原理上分为:白盒测试、黑盒测试和灰盒测试。 白盒测试:是通过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。 黑盒测试:是通过使用整个软件或某种软件功能来严格地测试, 而并没有通过检查程序的源代码或者很清楚地了解该软件的源代码程序具体是怎样设计的。测试人员通过输入他们的数据然后看输出的结果从而了解软件怎样工作。在测试时,把程序看作一个不能打开的黑盆子, 在完全不考虑程序内部结构和内部 特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求 规格说明书的规定正常使用,程序是否能适当地接收和正确的输出。黑盒测试 方法主要有等价类划分、边界值分析、因—果图、错误推测法。 等价类划分: 是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例.该方法是一种重要的,常用的黑盒测试用例设计方法. 1) 划分等价类: 等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,

最新一个常见的软件测试面试题

一个常见的软件测试面试题 一个常见的软件测试面试题 考官从办公室(面试现场)随意选取一个简单物品,假定是一个喝水的带广告图案的花纸杯,让应聘人对它设计出尽可能多的测试用例。 测试项目:杯子 需求测试:查看杯子使用说明书 界面测试:查看杯子外观 功能度:用水杯装水看漏不漏;水能不能被喝到 安全性:杯子有没有毒或细菌 可*性:杯子从不同高度落下的损坏程度 可移植性:杯子再不同的地方、温度等环境下是否都可以正常使用 兼容性:杯子是否能够容纳果汁、白水、酒精、汽油等 易用性:杯子是否烫手、是否有防滑措施、是否方便饮用 用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述 疲劳测试:将杯子盛上水(案例一)放24小时检查泄漏时间和情况;盛上汽油(案例二)放24小时检查泄漏时间和情况等 压力测试:用根针并在针上面不断加重量,看压强多大时会穿透 跌落测试:??杯子加包装(有填充物),在多高的情况摔下不破损 震动测试: 杯子加包装(有填充物),六面震动,检查产品是否能应对恶劣的铁路\公路\航空运输 测试数据: 测试数据具体编写此处略(最讨厌写测试数据了)。其中应用到:场景法、等价类划分法、因果图法、错误推测法、边界值法等方法 期望输出:

该期望输出需查阅国标、行标以及使用用户的需求 说明书测试: 检查说明书书写准确性 给大家提三个产品:1.手机 2.电饭锅 3.电梯 有兴趣的同学可以把答案写出来 一个常见的软件测试面试题 问题集 1.软件测试分哪两种方法?分别适合什么情况? 2.一套完整的测试应该由哪些阶段组成?分别阐述一下各个阶段。 3.软件测试的类型有那些?分别比较这些不同的测试类型的区别与联系。 4.测试用例通常包括那些内容?着重阐述编制测试用例的具体做法 5.在分别测试winform的C/S结构与测试WEB结构的软件是,应该采取什么样的方法分别测试?他们存在什么样的区别与联系? 6.在测试winform的C/S结构软件时,发现这个软件的运行速度很慢,您会认为是什么原因?您会采取哪些方法去检查这个原因? 7.描述使用bugzilla缺陷管理工具对软件缺陷(BUG)跟踪的管理的流程8.如果您是测试组长,您会采取什么样的方式管理团队?在测试人员同开发人员的沟通过程中,如何提高沟通的效率和改善沟通的效果?维持测试人员同开发团队中其他成员良好的人际关系的关键是什么? 问题解答: 1.软件测试分哪两种方法?分别适合什么情况? 软件测试方法一般分为两种:白盒测试与黑盒测试。白盒测试又称为结构测试、逻辑驱动测试或基于程序本身的测试,它着重于程序的内部结构及算法,通常不关心功能与性能指标;黑盒测试又被称为功能测试、数据驱动测试或基于规格说明的测试,它实际上是站在最终用户的立场,检验输入输出信息及系统性能指标是否符合规格说明书中有关功能需求及性能需求的规定。 2.一套完整的测试应该由哪些阶段组成?分别阐述一下各个阶段。 计划阶段、设计阶段、白盒单元、白盒集成、黑盒单元、黑盒集成、系统测试、回归测

软件测试人员面试笔试题及答案

软件测试笔试试题 一、单选题 1.关于HTTP协议中状态码的表示,下列说法错误的是(A) A.1**:表示服务器错误 B.2**:表示请求成功地接收 C.3**:表示重定向 D.4**:表示客户端错误 2.在Linux中.要解包bugzilla.tar.gz并详细报告tar命令处理的文件名,应使用命令(A )A.tar –xvzf bugzilla.tar.gz B.tar –cvzf bugzilla.tar.gz C.tar –cvzf bugzilla.tar.gz D.tar –cxvf bugzilla.tar.gz 3.有如下C程序 #include void main() { int n; int s = 0; int t = 1; for( n = 1 ; n <= 20 ; n++) { _______ s += t; } printf(“%d\n”, s); } 若使该程序实现计算1!+ 2!…….+20!的功能,则在程序横线上应填语句(D ) A.n*=t B. n=n*(n-1) C. t=t*(n-1) D. t*=n; 4.有如下IP地址 (1)192.168.1.1 (2)10.10.0.0 (3)165.100.0.0 (4)202.255.0.255 则下列说法中正确的是(C ) A.(1)是C类地址可以直接出现在互联网上 B.(2)是A类地址,主机号为0.0,不可以直接出现在互联网上 C.(3)是B类地址,不可以直接出现在互联网上 D.(4)是D类地址,不可以直接出现在互联网上 5. 下列常用的测试用例设计技术中,不属于白盒测试技术的是(D ) A.信息流分析法 B.数据流分析法 C.逻辑覆盖测试和基本路径测试 D.状态图法

软件测试技术类面试题集锦(6)十个经典软件测试面试题

软件测试技术类面试题集锦(6)十个经典 软件测试面试题 问题:软件测试技术类面试题集锦(6)十个经典软件测试面试题回答: 1.什么是软件测试,软件测试的目的 参考答案: 什么是软件测试: ·软件测试就是在受控制的条件下对系统或应用程序进行操作并评价操作结果的过程,所谓控制条件应包括正常条件与非正常条件。 ·软件测试过程中应该故意地去促使错误的发生,也就是事情在不该出现的时候出现或者在应该出现的时候没有出现。从本质上说,软件测试是“探测”,在“探测”中发现软件的毛病。 ·软件测试贯穿于软件定义与开发的整个周期,软件的需求规格说明书,结构设计及程序编码,都属于软件测试的对象。 ·软件测试包含白盒测试与黑盒测试,白盒测试是针对程序代码进行正确性检验的测试工作,黑盒测试独立于程序代码,从用户的角度,通过一定的测试步骤与测试案例,验证软件功能、性能等指标能否满足实际应用需求的测试工作。 软件测试的目的: 软件测试的目的是为了保证软件产品的最终质量,在软件开发的

过程中,对软件产品进行质量控制。一般来说软件测试应由独立的产品评测中心负责,严格按照软件测试流程,制定测试计划、测试方案、测试规范,实施测试,对测试记录进行分析,并根据回归测试情况撰写测试报告。测试是为了证明程序有错,而不能保证程序没有错误。 2.软件测试的风险主要体现在哪里 参考答案: 我们没有对软件进行完全测试,实际就是选择了风险,因为缺陷极有可能存在没有进行测试的部分。举个例子,程序员为了方便,在调试程序时会弹出一些提示信息框,而这些提示只在某种条件下会弹出,碰巧程序发布前这些代码中的一些没有被注释掉。在测试时测试工程师又没有对其进行测试。如果客户碰到它,这将是代价昂贵的缺陷,因为交付后才被客户发现。 因此,我们要尽可能的选择最合适的测试量,把风险降低到最小。 3.测试工具在测试工作中是什么地位 参考答案: 国内的很多测试工程师对测试工具相当迷恋,尤其是一些新手,甚至期望测试工具可以取代手工测试。测试工具在测试工作中起的是辅助作用,一般用来提高测试效率。自动化测试弥补了手工测试的不足,减轻一定的工作量。实际上测试工具是无法替代大多数手工测试的,而一些诸如性能测试等自动化测试也是手工所不能完成的。 对于自动测试技术,应当依据软件的不同情况来分别对待,一般自动技术会应用在引起大量重复性工作的地方、系统的压力点、以及

软件测试工程师常见面试题及答案

软件测试工程师常见面试题及答案 --> 导语:软件工程师一般指从事软件开发职业的人。 一、什么是软件测试 IEEE中是这样描述的:使用人工或自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。 二、为什么要开展软件测试呢 首先,测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理者发现当前软件开发过程的缺陷,以便及时改进。同时,这种分析也能帮助测试人员设计出游针对性的测试方法,改善测试的效率和有效性。 其次,没有发现错误的测试也是有价值的,完整的测试是评定软件质量的一种方法。 简单地说,测试的根本目的就是确保最终交给客户的产品符合用户的需求,在产品交给用户之前尽可能多地发现并改正错误。 三、我们怎么开展软件测试呢 现代软件测试活动一般包括以下内容: 制定测试计划。 设计测试用例。

实施测试。 提交缺陷报告。 测试总结。 四、软件测试要达到什么目标呢 软件测试一般要达到下列目标: 确保产品完成了它所承诺或公布的功能,并且用户可以访问到的功能都有明确的书面说明。 确保产品满足性能和效率的要求。使用起来系统运行效率低、用户界面不友好,用户操作部方便的产品不能说是一个有竞争力的产品。用户最关心的不是产品的技术有多先进,而是他能从这些技术中得到多少好处,使用是否得心应手。 确保产品是健壮的和适应用户环境的。健壮性即稳定性,是产品质量的基本要求。 五、测试和调试有什么不同 测试调试 发现软件的错误(是否满足用户需求) 确定程序中可疑错误的原因和确切位置,对程序(设计或编号)进行修改,排除错误贯穿整个软件生命周期(很多公司只在编码后期才进行测试) 主要在开发阶段 由测试人员和程序员参与程序员参与 可见,有些人认为测试和调试时一码事是错误的,实际上测试与调试有着本质的区别。简单地说,测试的主要工作是找缺

软件测试面试题答案

软件测试面试题答案 千锋老师掌握了大量的软件测试面试题答案,以下为比较典型的两个: 1、以windows对文件的复制粘帖功能为例,尽可能多地写出测试思路。 软件测试面试题答案: <1>基本功能测试:文件的复制粘贴功能,首先关键字“文件”,文件有不同的分类(图片、视频、音频、文档等),每个分类又有不同的类型(文档类型:txt doc execl pdf等),每个文件又有不同的大小,而且文件还有很多权限,是不是隐藏,是不是只是管理员可执行。选择不同分类的不同类型,不同大小的文件做测试资源。 比如:文档类型里面txt文件可以分为1.KB的txt文件、1MB的txt文件、

1GB的txt文件...... 下一个关键字复制粘贴复制有多种方式右击选择、Ctrl+C、拖动复制,对应粘贴也有各种方式。然后从哪复制,粘贴到哪,比如可以有本机硬盘、移动硬盘、优盘、内存卡、软盘、光盘、连接手机存储,复制到网络地址等等。 复制粘贴后文件是不是可用,文件权限是不是有变化。复制过去容量不够怎么处理?复制过后有重名文件怎么处理?复制过程中取消、关机、拔优盘怎么处理?复制过程能不能执行文件? <2>性能测试:复制粘贴功能性能怎么样?复制文件的速度可不可以接受?同时复制多个文件是不是可以完成?复制文件过程中占用CPU资源大不大,耗电量大不大? <3>兼容性测试:Windows7,Windows8,Windows8.1,Windows10等各种windows版本是不是都支持这个功能。 <4>交互测试:复制粘贴文件时,使用windows存储的其他功能是否有影响?比如播放本地的音频、视频、等同时复制文件是不是有影响。一边复制,一边粘贴是不是有影响。 2、已知String convert(String page)作用是将WEB页转码为方便移动设备查看的页面,为了确保转码的正确性,请设计相应测试策略。 软件测试面试题答案:

九个常见软件测试面试题

九个常见软件测试面试题 千锋老师非常关注同学们的软件测试面试题就业问题,到现在为止,所有千锋软测毕业同学都能高薪高起点就业,以下是千锋老师搜集的软件测试面试题,一起来看看吧! 1.项目介绍(项目经验直接决定一个人能否胜任一份工作,企业更应该看重一个人解决问题的思路和具体能力),项目介绍部分重要的思路是应该先整体后局部,介绍整体的时候要有量化的数据(从项目度量的五大维度:规模,包括项目代码规模,需求规模、用例规模,工作量,进度,质量和成本),然后是整体的测试流程,再然后是角色与职责,接下来是项目中自己的特色,比如做得好的是什么、遇到的困难是什么、败笔是什么,末了是心得体会。 2.数据库方面知识,基本的要求是数据库记录的增删改查(insert、delete、update、select),表结构的增删改查(create、drop、alter、describe)、存储过程、触发器等。

3.linux操作系统相关,基本的目标是熟悉常见的50个命令,比如find命令(-name、-type、-perm、-user、-group、-ctime、-atime)等,熟悉vi、熟悉linux搭建测试环境。比如LAMP环境搭建。 4.缺陷相关知识,基本的是缺陷跟踪的流程(流程的基本要素),整体的流程,能在纸上给面试官画出来更好(尤其是男面试官,从男人好色的角度来看,写得清楚很重要),缺陷单的属性,至少能列出20个属性,每个属性的意义,如何描述好缺陷单,缺陷单描述的5C原则,比如缺陷重现步骤应该complete.如何描述一个你认为的经典的bug单。 5.设计用例相关,基本的包括用例的格式要素,用例设计工程方法论,每个方法要求(方法的背景,操作步骤,优缺点、适应范围,与其他用例方法如何配合),在项目中如何利用测试用例设计工程方法。 还有如何评价、评审测试用例,评审从哪些维度?要设计好测试用例需要哪些方面的知识结构,比如技术、业务、方法。 6.软件测试流程,系统测试相关规范和标准的流程:熟悉产品/项目,需求评审,测试需求,测试计划,测试方案,测试用例,预测试,一轮正式测试、第二轮回归测试、第三轮测试,测试报告,测试总结,测试指南。 7.网络相关,基本的网络基础知识,比如TCP/IP协议。 8.测试工具,包括三个大的类型,性能测试工具、自动化测试工具、测试管理类工具。起码的要求是熟悉工具的使用。

软件测试面试题[找工作必读]

01. 为什么要在一个团队中开展软件测试工作? 因为没有经过测试的软件很难在发布之前知道该软件的质量,就好比ISO质量认证一样,测试同样也需要质量的保证,这个时候就需要在团队中开展软件测试的工作。在测试的过程发现软件中存在的问题,及时让开发人员得知并修改问题,在即将发布时,从测试报告中得出软件的质量情况。 02. 您在以往的测试工作中都曾经具体从事过哪些工作?其中最擅长哪部分工作? 我曾经做过web测试,后台测试,客户端软件,其中包括功能测试,性能测试,用户体验测试。最擅长的是功能测试 03. 您所熟悉的软件测试类型都有哪些?请试着分别比较这些不同04. 的测试类型的区别与联系(如功能测试、性能测试……) 测试类型有:功能测试,性能测试,界面测试。 功能测试在测试工作中占的比例最大,功能测试也叫黑盒测试。是把测试对象看作一个黑盒子。利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。采用黑盒技术设计测试用例的方法有:等价类划分、边界值分析、错误推测、因果图和综合策略。 性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。 界面测试,界面是软件与用户交互的最直接的层,界面的好坏决定用户对软件的第一印象。而且设计良好的界面能够引导用户自己完成相应的操作,起到向导的作用。同时界面如同人的面孔,具有吸引用户的直接优势。设计合理的界面能给用户带来轻松愉悦的感受和成功的感觉,相反由于界面设计的失败,让用户有挫败感,再实用强大的功能都可能在用户的畏惧与放弃中付诸东流。 区别在于,功能测试关注产品的所有功能上,要考虑到每个细节功能,每个可能存在的功能问题。性能测试主要关注于产品整体的多用户并发下的稳定性和健壮性。界面测试更关注于用户体验上,用户使用该产品的时候是否易用,是否易懂,是否规范(快捷键之类的),是否美观(能否吸引用户的注意力),是否安全(尽量在前台避免用户无意输入无效的数据,当然考虑到体验性,不能太粗鲁的弹出警告)?做某个性能测试的时候,首先它可能是个功能点,首先要保证它的功能是没问题的,然后再考虑该功能点的性能测试 04.您认为做好测试用例设计工作的关键是什么? 白盒测试用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果 黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。不可能做到完全测试,以最少的用例在合理的时间内发现最多的问题 05. 请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。 黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。 白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。 软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,

相关文档
最新文档