有关软件测试的知识讲解

1.什么是软件测试?
使用人工和自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差异
2.  软件测试的目的是什么?
软件测试的目的在于发现错误;一个好的测试用例在于发现从前未发现的错误;一个成功的测试是发现了从前未发现的错误的测试。
3. 软件测试的目标?
软件测试以检验是否满足需求为目标。
4. 什么是软件缺陷?  
满足下列五个规则之一才称为软件缺陷:
1)软件未达到产品说明书标明的功能。
2)软件出现了产品说明书指明不会出现的错误。
3)软件功能超出产品说明书指明的范围。
4)软件未达到产品说明书虽未指出但应该达到的目标。
5)软件测试人员认为软件难以理解、不易使用、运行速度缓慢,或者最终用户认为不好。
5. 什么黑盒测试?
黑盒测试是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试或数据驱动测试。
6. 黑盒测试方法都包括哪些?
等价类划分、边界值分析、决策分析法、因果图分析、错误推测法等。
7. 什么是等价类划分?
把所有可能的输入数据(有效的和无效的)划分成若干个等价的子集(称为等价类),使得每个子集中的一个典型值在测试中的作用与这一子集中所有其它值的作用相同. 可从每个子集中选取一组数据来测试程序
8. 什么是边界值分析法?
边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法.通常边界值分析法是作为对等价类划分法的补充
9. 什么情况下使用决策分析法?
在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的操作。决策表很适合于处理这类问题
10.你是如何利用决策分析法设计用例?
(1) 确定规则的个数。
有n个条件的决策表有2n个规则(每个条件取真、假值)。
(2) 列出所有的条件桩和动作桩。
(3) 填入条件项。
(4) 填入动作项,得到初始决策表。
(5) 简化决策表,合并相似规则。
11.什么是因果图分析法?
因果图法是基于这样的一种思想:一些程序的功能可以用判定表(或称决策表)的形式来表示,并根据输入条件的组合情况规定相应的操作。
12.你是如何利用因果图分析法来设计用例的?
(1)根据程序规格说明书描述,分析并确定因(输入条件)和果(输出结果或程序状态的改变),画出因果图。
(2)将得到的因果图转换为判定表。
(3)为判定表中每一列所表示的情况设计一个测试用例。
13. 因果图分析法中用到的五种约束分别是什么?
E约束(异):a和b中最多有一个可能为1,即a和b不能同时 为1。
I 约束(或):a、b、c中至少有一个必须为1,即 a、b、c不能同时为0。
O约束(唯一):a和b必须有一个且仅有一个为1。
R约束(要求):a是1时,b必须是1,即a为1时,b不能为0。
M约束(强制):若结果a为1,则结果b强制为0
14.什么是测试用例?
所谓测试用例是为特定的目的而设计的一组测试输入、执行条件和预期的结果;测试用例是执行测试的最小实体。
15你觉得有必要写测试用例么,写测试用例的作用有哪些?
在开始实施测试之前设计好测试用例,可以避免盲目测试并提高测试效率。
测试用例的使用令软件测试的实施重点突出、目的明确。
16.你知道软件生命的周期么?包括哪些阶段?
一个软件生命周期包括制定计划、需求分析定义、软件设计、程序编码、软件测试、软件运行、软件维护、软件停用等8个阶段
17.软件测试的对象是什么?
软件开发过程中所产生的需求规格说明、概要设计规格说明、详细设计规格说明以及源程序都是软件测试的对象
18.软件测试是否等于程序测试?
不是,软件测试贯串于软件定义和开发的整个过程,软件开发过程中所产生的需求规格说明、概要设计规格说明、详细设计规格说明以及源程序都是软件测试的对象。
19. 软件测试涉及的关键问题包括哪些方面?
(1)测试由谁来执行。(2)测试什么。(3)什么时候进行测试。(4)怎样进行测试。
20. 软件测试的原则包括哪些?
(1)应当把“尽早地和不断地进行软件测试”作为软件开发者的座右铭;
(2)测试用例应由测试输入数据和与之对应的预期输出结果这两部分组成;
(3)程序员应当避免检查自己的程序;
(4)在设计测试用例时,应当包括合理的输入条件和不合理的输入条件;
21. 软件测试按照开发阶段划分为哪几类?
  单元测试、集成测试、系统测试、确认测试、验收测试。
22. 完成的软件开发过程?V模型?
 
23. 按照测试技术来分测试分哪几类?
白盒测试、黑盒测试、灰盒测试。
24.什么是白盒测试和灰盒测试?
白盒测试又称为结构测试、逻辑驱动测试或基于程序的测试,一般用来分析程序的内部结构。
灰盒测试介于白盒测试和黑盒测试之间。
25.谈谈黑盒测试的特点?优点?
(1)黑盒测试与软件的具体实现过程无关,在软件实现的过程发生变化时,测试用例仍然可以使用。(2)黑盒测试用例的设计可以和软件实现同时进行,这样能够压缩总的开发时间。
26. 黑盒测试主要能够发现哪些方面的问题?
? 是否有不正确或遗漏了的功能?
? 在接口上,输入能否正确地接受?能否输出正确的结果?
? 是否有数据结构错误或外部信息访问错误?
? 性能上是否能够满足要求?
? 是否有初始化或终止性错误?
27. 测试停止的依据?
ZERO BUG、GOOD ENOUGH。
或者如下回答:
第一类标准:测试超过了预定时间,则停止测试。
第二类标准:执行了所有的测试用例,但并没有发现故障,则停止测试。
第三类标准:使用特定的测试用例设计方案作为判断测试停止的基础。
第四类标准:正面指出停止测试的具体要求,即停止测试的标准可定义为查出某一预订数目的故障。
第五类标准:根据单位时间内查出故障的数量决定是否停止测试。
28. 什么是健壮等价类测试?
主要的出发点是考虑了无效等价类。对有效输入,测试用例从每个有效等价类中取一个值;对无效输入,一个测试用例有一个无效值,其他值均取有效值。
29. 什么是错误推测法?你经常用的错误推测法来测试系统的经验有哪些?
基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法
。常用的错误推测法有:输入非法数据、默认值的测试、更改输出属性的测试、文件类型测试、文件超载测试、介质忙或者介质损坏等测试法。
30. 你选择测试方法的原则是什么?
(1)首先采用等价类划分法编写测试用例必须考虑正常值与异常值的情况
(2)必要时采用边界值分析法补充测试用例。
(3)采用错误推断法再追加测试用例。
(4)对照程序逻辑,检查已设计出的测试用例的逻辑覆盖 程度。如果没有达到要求的覆盖标准,则应当再补充更多的测试用例。
(5)如果程序的功能说明中含有输入条件的组合情况,则应一开始就选用因果图法。
31.设计测试用例的原则有哪些?
测试用例的代表性、测试结果的可判定性、测试结果的可再现性
32. 测试用例模板的主要要素有哪些?
标识符:惟一标识每一个测试用例
测试项:准确的描述所需要测试的项及其特征
测试环境要求:表征执行该测试用例需要的测试环境
输入标准:执行测试用例的输入需求(这些输入可能包括数据、文件或者操作)
输出标准:按照指定的环境和输入标准得到的期望输出结果
33. 软件测试的过程有哪些?
测试计划、测试设计、测试执行、测试总结
34. 写测试计划的主要任务是什么?
1). 对需求规格说明书仔细研究
2). 确定软件测试的范围
3). 确定软件测试的技术要求
4). 分析测试需求,确定被测试软件的功能和特性
35. 测试计划中的5W1H什么意思?
Why、What、Where、When、Who、How,其中Why主要指测试目的。What指测试范围即测试内容、Where指测试环境、When指测试的时间阶段安排、Who指测试资源、How指测试策略。
36. 测试总结主要是总结哪些方面内容的?
1). 总结测试状态
2). 总结软件状态
37 . 单元测试主要测试内容?
模块接口、局部数据结构、边界条件、独立的路径和错误处理。
38 . 什么是集成测试?
是指每个模块完成单元测试后,需要按照设计时确定的结构图,将他们连接起来,进行集成测试,集成测试也称为综合测试
39 。集成测试的两种方法?
非增量式集成测试、增量式集成测试
40 。什么是非增量式集成测试?
对所有模块进行个别的单元测试后,按照程序结构图将各模块连接起来,把连接后的程序当作一个整体进行测试。
41.什么增量式集成测试?
逐次将未曾集成测试的模块和已经集成测试的模块(或子系统)结合成程序包,再将这些模块集成为较大系统,在集成的过程中边连接边测试,以发现连接过程中产生的问题。
42. 什么是自顶而下增量式测试?
自顶向下增量式测试表示逐步集成和逐步测试是按照结构图自上而下进行的,即模块集成的顺序是首先集成主控模块(主程序),然后依照控制层次结构向下进行集成。从属于主控模块的按深度优先方式(纵向)或者广度优先方式(横向)集成到结构中去。
43.谈谈非增量式集成测试、增量式集成测试,哪个好些?
非增量式测试的方法是先分散测试,然后集中起来再一次完成集成测试。假如在模块的接口处存在错误,只会在最后的集成测试时一下子暴露出来。
增量式测试是逐步集成和逐步测试的方法,把可能出现的差错分散暴露出来,便于找出问题和修改。而且一些模块在逐步集成的测试中,得到了较多次的考验,因此,可能会取得较好的测试效果。
结论:增量式测试要比非增量式测试具有一定的优越性。
44. 什么是回归测试?
在集成测试策略的环境中,回归测试是对某些已经进行过的测试的某些子集再重新进行一遍,以保证上述改变不会传播无法预料的副作用或引发新的问题。
45. 什么是确认测试?
确认测试也称为合格性测试,是检验所开发的软件是否能按用户提出的要求进行。
46. 请您谈一谈为什么要进行系统测试?
由于软件只是计算机系统中的一个组成部分,软件开发完成之后,最终还要和系统中的硬件系统、某些支持软件、数据信息等其他部分配套运行。因此,在投入运行前要完成系统测试,以保证各组成部分不仅能单独的得到检验,而且在系统各部分协调工作的环境下也能正常工作。
47 。你知道哪几种系统测试的方法?
恢复测试、安全测试、强度测试、性能测试、正确性测试、可靠性测试、兼容性测试、Web测试
48. 安全性测试你一般从哪几方面做测试?
用户管理和访问控制、通信加密、安全日志测试

49. 什么是兼容性测试?
软件兼容性测试是检测各软件之间能否正确地交互和共享信息,其目标是保证软件按照用户期望的方式进行交互,使用其它软件检查软件操作的过程。
50 。Web站点的测试一般测试哪些内容?
(1)文字测试     (2)链接测试
(3)图形、图像测试    (4)表单测试
(5)动态内容测试     (6)数据库测试
(7)服务器性能及负载测试   (8)安全性测试

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值