软件测试常见面试题

1、软件的含义

程序、数据以及相关文档的集合。

2、测试与调试的区别是什么/h2>

测试是测试人员进行,主要目标是发现、 告、跟踪缺陷;
调试是开发人员进行,主要目标是定位缺陷位置、分析缺陷原因、修复缺陷。

3、IEEE是什么意思/strong>

国际电气电子工程师协会
ISO:国际标准化组织

4、GB是什么意思/strong>

国家标准

5、软件测试的含义

发现缺陷的过程。IEEE中的定义是,使用人工或者自动化手段来运行或测定某个系统的过程,目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。

6、软件测试的目的

验证软件是否满足各类文档说明书等规定的软件质量要求;
找出软件缺陷;
为软件产品的质量测量和评价提供依据;
帮助开发改进开发过程。

7、什么是功能、性能、兼容性/strong>

功能代表一个软件能做什么(举例,以qq的聊天功能为例);性能反映软件运行的速度或速率、占用资源多少等指标;兼容性表示一个软件与其所在运行环境的依赖程度,包括与硬件、操作平台、其他软件的依赖。

8、测试分为哪几个阶段个阶段的目的是什么/strong>

测试分为单元测试、集成测试、系统测试、验收测试四个阶段。前三个阶段的目的是尽可能多的发现缺陷,而验收测试是要验证软件满足了用户需求,帮助用户建立系统正常使用的信心,发现缺陷不是此阶段的目标。

9、解释QA及其职责

QA的含义是软件质量保证(人员),SQA
只要职责是制定和加强促进软件开发并防止软件缺陷的标准和方法,并监督标准和过程被正确的遵循。

10、测试工程师和软件质量保证的区别/strong>

测试工程师的主要任务是在最短的时间内发现尽可能多的错误,并确保这些缺陷得以修复;
软件质量保证的主要职责是制定和加强促进软件开发并防止软件缺陷的标准和方法,并监督标准和过程被正确的遵循。

11、测试应该由什么人来进行/strong>

测试应该由独立的第三方来进行,第三方表示测试人员不参与程序的开发。

12、pareto法则、帕累托法则、28原则、82原则

一般情况下80%的缺陷聚集在20%的关键核心业务模块中,这个原则告诉我们在做测试时,应该重点分析和测试20%的核心业务,具体说要做好需求分析。

13、杀虫剂怪事

用于描述软件测试越多,其对测试的免疫力越强的现象。这个现象告诉我们,测试时,应该尝试新方法、不同的测试程序,对程序进行测试,以找出更多的缺陷。

14、木桶原理/短板原理

木桶原理在软件方面的主要含义是全面质量管理,另外还告诉我们测试时要关注团队中较弱的人。

15、Good-enough原则

测试的时候不要做过多的测试,也不做不充分的测试。至于测试多少合适,需要不断积累经验,在项目中指定最低测试通过标准和测试内容,然后具体问题具体分析。

16、群集效应

发现的缺陷越多,证明软件存在的缺陷越多。群集效应指导我们在找到软件缺陷的地方继续查找。

17、什么是确认测试归测试/strong>

确认测试也叫再测试,缺陷修复以后,验证缺陷是否真正修复;
回归测试:缺陷修复以后,确保对程序的修改没有给软件其他未改变部分带来新的缺陷。

18、测试人员应该具备哪些素质/strong>

首先要有责任心,要有破坏的态度,对事不对人,三心二意(细心、信心、耐心、缺陷预防意识、沟通意识),具备一定的开发技能,善于思考。

19、测试人员应具备的三心二意

细心、信心、耐心、缺陷预防意识、沟通意识

20、如果测试提交的缺陷开发人员不认可,怎么办/strong>

首先分析或与开发沟通不认可的原因。
如果拒绝原因是提交的不是缺陷,而且自己分析后,的确不是缺陷,则应该注意以后再做测试时要做好复现,认真研读需求,提高自己找缺陷的能力。
如果拒绝原因是提交的不是缺陷,但是自己分析时认为缺陷应该是存在的,则再次研读需求并做好复现,拿出确实是缺陷的证据,然后与开发沟通。
如果拒绝原因是认可缺陷,但不予以修复,如果自己觉得必须修复,则拿出充分理由和证据和不修复的不利影响和影响范围,再与开发沟通。
注意沟通技巧,合理的论述,向开发说明自己的判断理由,注意客观、严谨,不掺杂个人情绪
等待测试经理作出最终决定,如果仍然存在争议,可以通过公司政策所提供的渠道,向上级反映,并由上级做决定。

21、如何解决开发和测试的矛盾/strong>

以沟通合作的方式开展工作
提高开发技能
换位思考
进行有效沟通。

22、测试团队中都有哪些角色负责什么任务有多少人/strong>

测试负责人:制定测试计划,监督安排任务,进行测试总结。1
测试工程师:进行测试需求分析,设计用例,搭建环境,执行用例,提交并跟踪缺陷。3
技术支持:负责环境维护。1
配置管理员:维护版本架构、维护版本库、文档配置。1
质量保证人员:负责软件质量方面的工作。1

22、什么是软件开发生命周期什么是软件生命周期/h2>

从软件最初构思到公开发行的过程。
瀑布模型的过程是计划、需求、设计、编码、测试、运行、维护循环。
瀑布模型有严格的开发步骤,每个阶段是按顺序进行的,每个阶段都必须编写完整的文档,每个阶段完成后都必须经过审查才能进入下一步。
瀑布模型不能迭代,不能反复;测试在编码之后,测试太晚;测试的只是程序。

23、软件开发有什么模型件测试主要有哪些模型/h2>

软件开发模型:大爆炸模型、边写边改模型、瀑布模型、螺旋模型、敏捷开发模型(测试开发一起)
软件测试模型:V模型、W模型、H模型、X模型、前置测试模型、敏捷测试模型

24、简述V模型

V模型的过程:用户需求——需求分析——概要设计——详细设计——编码——单元测试——集成测试——系统测试——验收测试。
优点:
1)v的左端表示传统的瀑布开发模型,右端明确地将测试分为不同的阶段或级别,测试过程更具体;
2)测试各个阶段和开发的各个阶段相对应;
3)v模型的测试策略包括底层测试和高层测试,底层测试是为了源代码的准确性,高层测试是为了整个系统满足用户的需求。
缺点:
1)测试的对象是程序本身,忽略了测试活动对需求的分析,系统设计等活动的验证和确认的功能,直到后期的验收测试才被发现。
2)测试是开发之后的阶段,实际应用中容易导致需求阶段的错误一直到最后系统测试阶段才被发现。

25、简述W模型

w模型的过程:左边v是需求分析——概要设计——详细设计——编码实现——模块集成——系统构建——系统安装;
右边v是需求测试——概要设计测试——详细设计测试——单元测试——集成测试——系统测试——验收测试。
优点:
1)w模型体现了尽早和不断测试的原则,既强调方案的设计,也强调测试执行;
2)左侧v是开发,右侧v是与开发并行的测试,相比于v模型,w模型增加了软件各开发阶段中应同步进行的验证和确认活动,w模型明确表示除了测试与开发的并行关系,有利于尽早的全面发现问题。
3)测试伴随整个软件开发周期,且测试的对象不仅仅是程序,需求、设计等同样也要测试。
缺点:
在w模型中,需求、设计、编码等活动被视为串行的,测试和开发活动也保持着一种线性的前后关系,上一阶段完全结束,才可正式开始下一个阶段工作。这样就无法支持迭代的开发模型,不利于当前软件开发复杂多变的情况。

26、简述H模型

H模型将测试活动完全独立出来,形成一个完全独立的流程,将测试准备活动和测试执行活动清晰的体现出来。H模型的测试流程是只要测试准备工作完成,达到测试就绪点,测试就可以执行了。
优点:
1)软件测试不仅仅是测试的执行,还包括很多其他的工作;
2)软件测试是一个独立的流程,贯穿产品整个生命周期,与其他流程并发的进行,当某个测试时间点就绪时,软件测试即从测试准备阶段进入测试执行阶段。
3)H模型反映出软件测试要尽早准备,尽早执行
4)软件测试可以进行迭代、反复进行。

27、敏捷开发

敏捷开发的核心思想是:以人为本、适应变化
具体讲:
认为个体和交互重于过程和工具,强调通过过程和工具理解个人和交流的作用;
2)认为可用软件重于完备文档,强调通过全面的文档理解运行的软件;
3)认为客户协作重于合同谈判,强调通过合同和谈判得到客户的协作;
4)认为响应变化重于遵循计划,强调在计划的执行中做出对变更的响应。
特点:
1)敏捷开发提倡迭代式和增量式的开发模式,并强调测试在其中的重要作用
2)敏捷开发是以用户为中心,以客户需求为导向的开发过程,在此过程中随时做好“迎接变化”的准备,客户是敏捷的关键环节
3)敏捷开发没有单一固定的开发方法或过程,敏捷开发有三个共同点:依赖客户的参与、测试驱动以及紧凑的迭代周期开发。

28、敏捷测试

1)敏捷测试是协同测试的一种形式,程序员结对编程,程序员分饰测试员角色,敏捷测试是连续测试。
2)敏捷测试侧重于单元测试和验收测试。单元测试的过程是先设计单元测试用例,然后进行编码,之后执行测试。
3)敏捷测试强调用户参与,单元测试之后代码集成到代码库中,再有用户进行验收测试,验收测试的结果反馈给开发人员,缺陷得以迅速修复。

29、软件质量要求有哪些/h2>

功能要求和非功能要求。

30、软件非功能要求有哪些/h2>

性能要求(压力测试、负载测试、容量测试、可靠性测试)、界面测试、兼容性测试、易用性测试、文档测试、可用性测试、安装测试、灾难恢复性测试等。
负载测试是给软件不断加压,加负载的情况下,软件的反应能力,一般是在对软件性能不太了解的情况下采用的方式;
压力测试一般是指负载测试结束之后,施加一个非预期的压力,看软件的反应能力;
容量测试是测试软件的容量(容纳人数、数据库大小等)
可靠性测试一般是在压力测试的情况下,长时间运行,看软件会不会出现问题。

31、简述测试的基本过程拿到一个软件后,应该怎么开始工作怎么做测试介绍测试流程/h2>

1)测试人员进行测试需求分析
2)测试负责人编写测试计划(工期、范围、人员、标准、任务安排等)
3)根据需求分析设计和编写测试用例
4)测试人员搭建测试环境,创建测试用例,执行测试用例,提交缺陷 告并进行跟踪、记录测试事件
5)进行测试评估和总结
每一分步工作完成后都进行评审。

35、怎么做测试需求分析

1)收集各类文档、仔细阅读文档,提出问题,分析问题或沟通解决、整理需求信息
2)编写测试需求分析说明书(excel):功能分解,编写检查点和测试点
3)需求评审

36、拿到项目后,需要分析或咨询软件哪些方面的问题/h2>

软件主要的功能、流程、开发环境(开发语言<含数据类型>、数据库、中间件)、运行环境(硬件、软件、 络、架构等)、用户群、测试范围、测试优先级。

37、什么时候提交发现的缺陷/h2>

测试执行时发现缺陷,立即提交缺陷。

38、什么是入口准则、出口准则/h2>

入口准则是进行一项测试工作前需要准备好的前提条件
出口准则是一项测试工作可以结束的前提条件

39、需求评审都有哪些人参与/h2>

项目经理、开发经理、测试经理、测试人员、开发人员、市场经理、客户等。
40、怎么做需求评审或者说需求评审需要评审哪些方面br> 编写或设计需求评审检查单,比如可以检查有无错别字、病句、标点符 使用是否正确,格式是否一致,是否还有多余需求,是否有错误需求,是否有遗漏需求等。

41、测试资源需求有哪些/h2>

人力资源、硬件资源、软件资源

42、什么是测试策略么是测试范围/h2>

测试策略主要指如何进行某种测试(如功能测试、性能测试、兼容性测试、可用性测试、易用性测试等),用于说明测试方法以及如何使用测试方法。
测试范围有时候等价于测试策略,有时候指要测试的某个软件部位。

43、什么是BVT烟测试本验证测试么测/h2>

也称冒烟测试、版本验证测试、小版本验证测试、版本构建测试。冒烟测试用例是一组想先运行以确定这个给出的小版本是否可以测试的测试用例。冒烟测试主要测试软件的基本功能,以判断整个软件值不值得大规模测试。通常由一个人进行1-2h的测试,一般不测试次要功能和各种错误。

44、测试计划的内容和目的是什么/h2>

包含了产品概述、测试区域/测试策略/测试范围/测试目标(测试项、被测特征)、测试配置/测试资源、测试周期、进度安排(测试任务、人员安排)、测试方法/途径、测试交流、风险分析等内容。目的是指导测试过程,规定测试活动的范围、方法、资源和进度;明确正在测试的项目、要测试的特性、要执行的测试任务、每个任务的责任人以及与计划相关的风险。

45、怎么判断是不是软件缺陷/h2>

1)软件未达到产品说明书标明的功能
2)软件出现了产品说明书指明不会出现的错误
3)软件功能超出产品说明书指明范围
4)软件未达到产品说明书虽未指明但应达到的目标
5)软件测试员具体问题具体分析,认为软件难以理解,不易使用、运行速度缓慢,或者最终用户认为不好。

46、缺陷的产生主要是哪些原因主要的原因是什么/h2>

需求频繁变更、沟通不良、不了解客户的需求、实现新功能或很酷的功能、追求新技术、项目期限的压力、需求分析或设计投入的时间和精力不够、产品的复杂度、开发人员疲劳、压力过大或受到干扰、缺乏足够的知识、技能和检验、缺乏动力等。
最主要的原因:需求方面的原因

47、当你发现一个缺陷,怎么确认的确是一个缺陷/h2>

根据缺陷的判断原则来甄别发现的问题是不是一个缺陷,发现缺陷后,应该做好分离(是否因为操作等人为问题)和再现(相同的情况下复现)(3次),然后才能提交。

48、在正式提交一个缺陷前,应该做什么/h2>

分离缺陷,再现缺陷,然后才能提交。

49、怎么处理无法再现的缺陷/h2>

首先,应当对这样的缺陷进行详细的记录,并尽快提交给开发人员
其次,对于难以再现的缺陷要合理安排时间,对一时难以再现的缺陷可以暂时搁置,以保证项目的正常进度
最后,在测试过程中对未再现缺陷予以关注

50、什么是重复缺陷,怎么避免/h2>

提交了一个缺陷库中存在或者开发人员已经知道的缺陷
1)如果缺陷是跟同事提交的重复,任务分工解决,也可以在提交之前查询下库缺陷是否存在
2)如果缺陷是与自己以前提的重复,则需要提高发现缺陷的能力,通过提高开发能力来理解两个缺陷本质上是一个缺陷。

51、什么无效缺陷,怎么避免/h2>

提交的缺陷不是真正的缺陷
充分了解需求,提高自己识别缺陷的能力,提高缺陷写作能力

52、缺陷 告的写作准则是什么5c)

correct(准确):每个组成部分的描述准确,不会引起误解
clear(清晰):每个组成部分的描述清晰,易于理解
consice(简洁):只包含必不可少的信息,不包含任何多余的内容
complete(完整):包含复现该缺陷的完整步骤和其他本质信息
consistent(一致):按照一致的格式书写全部缺陷的 告

53、缺陷 告的内容有哪些缺陷 告的组织结构是什么/h2>

缺陷标题(或者说缺陷摘要、缺陷概述、缺陷基本信息)
预处理
再现步骤
预期结果
实际结果
严重程度
优先级
测试环境
测试版本
测试执行人
注释

55、缺陷 告的写作要注意什么

不要使用你、我、他等字眼,不要用情绪化的语言和强调符 ,不要使用“似乎”,看上去可能等不确定性内容,不要用认为比较幽默的内容,不要使用不确定的测试问题(不确定是否有缺陷)、不要人身攻击。

56、简述缺陷 告的处理流程/简述缺陷的生命周期

58、简述重复缺陷的处理流程

提交缺陷——》分配缺陷——》是重复缺陷——》置为无效缺陷

59、缺陷按照严重程度可以分为哪些类型/h2>

致命缺陷、严重缺陷、一般缺陷、较小错误、意见建议等。

60、缺陷按照优先级可以分为哪些类型/h2>

缺陷必须立刻解决
缺陷需要正常排队等待修复或列入软件发布清单
缺陷可以在方便时被纠正
下一个版本修复
不修复

61、缺陷的状态有哪些/h2>

新建/已提交
打开
已拒绝
已解决
已验证
已关闭

62、测试有哪些级别测试有哪些阶段

单元测试、集成测试、系统测试、验收测试

64、什么是单元测试元测试由谁来做/h2>

针对一个软件单元的测试,开发人员或懂开发的测试人员

65、什么是桩模块、驱动模块/h2>

软件测试常见面试题

71、什么是系统测试/h2>

对整个系统能不能满足用户需求的测试

72、系统测试的目的是什么/h2>

检查软件是否满足需求

73、系统测试能发现哪些缺陷遗留哪些缺陷/h2>

发现:非功能缺陷,涉及整个系统的问题
遗漏:对用户的需求的错误理解,没有实现或者没有完全实现用户的隐性需求

74、什么是验收测试/h2>

一般由客户进行的确认是否可以接受一个系统的验证性测试。验收测试根据客户的需求,业务流程进行的正式测试以确保系统符合所有验收的标准

75、验收测试有哪些人进行/h2>

客户或用户,测试人员介入

76、验收测试的目标是什么/h2>

对系统或子系统建立信心、对系统的非功能性的特性赢得信任

77、什么是alpha、beta测试何区别/h2>

alpha测试:潜在的客户/用户在开发场地进行的测试(内部)
beta测试:由潜在客户/用户在自己的环境下测试软件系统(公测)

78、什么是维护测试/h2>

软件正常使用后对软件的变更、更新进行测试

79、什么是性能测试载测试力测试什么区别/h2>

性能表现为处理速度、响应时间、CPU使用、内存使用、硬盘使用等
负载测试:通过不断增加负载来测试一个系统的性能
压力测试:通过增加负载超过系统正常工作能力来考察系统是否能在异常情况下正常工作

80、什么是功能测试/h2>

测试一个软件能做什么,是不是做了应该做的工作,没做不该做的工作。

81、什么是结构测试/h2>

白盒测试也称结构测试、逻辑驱动测试、基于程序本身的测试,是对程序结构进行的测试。

82、什么是与变更相关的测试哪些具体类型/h2>

与变更相关的测试是对修改后的程序进行测试。
确认测试(再测试)、回归测试。

83、什么是静态测试态测试何区分二者/h2>

静态测试:不执行程序的测试。针对文档和不需要执行的代码。
动态测试需要执行程序,方法一般采用黑盒测试(不关注内部结构,只关心输入输出)和白盒测试。

84、圈复杂度怎么计算/h2>

不重叠的闭合环数-1

85、什么是黑盒测试盒测试/h2>

黑盒测试也叫功能测试,基于规格说明书的测试,关注输入数据到程序中,输出结果是否正确,侧重于测试软件能做什么
白盒测试也叫结构测试、逻辑驱动测试,是对程序内部逻辑结构进行的而测试。

86、白盒测试有哪些方法体解释每种方法/h2>

白盒测试主要有逻辑覆盖测试方法,包括语句覆盖、判断覆盖、条件覆盖、判断-条件覆盖、条件组合覆盖、路径覆盖等。
语句覆盖:程序中的每个可执行语句至少被执行一次,能发现语句错误,但不能发现逻辑错误
判断错误:也叫分支覆盖。程序中的每个判定的取真分支和假分支至少执行一次,能发现逻辑错误,但不能发现组合判断中的条件错误。
条件覆盖:程序每个判定中的条件的可能取值至少满足一次,能发现条件错误,但不能发现逻辑错误
判定-条件覆盖:每个条件中的所有可能取值至少执行一次,同时每个判定至少执行一次
条件组合覆盖:每个判定中的所有条件取值至少执行一次。
路径覆盖:用例覆盖程序中的所有可能执行路径。如果路径数很多,会变得不切实际。

87、什么是配置测试/h2>

不同环境下进行测试

88、什么是文档测试/h2>

89、什么是国际化测试地化测试/h2>

国际性的软件
翻译成本国语言的,测试是否符合本国的语言习惯,是否符合本国法律,是否符合本国的国情。

90、测试用例的内容是什么/h2>

用例编 ,测试概述或用例标题、测试步骤、预期结果、输入数据、优先级、前置条件等。

91、测试用例有哪些元素/h2>

用例编 ,测试概述或用例标题、测试步骤、预期结果、输入数据、优先级、前置条件等。
或者说测试目标why,测试对象what,测试环境要求where,测试前提:when,输入数据。

92、什么是UI、GUI、UI测试

界面
图像界面
界面测试

93、测试用例的优先级

冒烟测试


94、解释测试目标、测试环境、测试对象、前置条件、测试策略、测试范围是什么/h2>

测试目标:功能测试、性能测试、界面测试、易用性测试、兼容性测试、安全性测试
测试策略:某类别测试的过程、方法以及方法如何使用,注意事项等
测试环境:硬件、软件、 络环境
前置条件:运行某些测试工作需要做好的准备工作
测试范围:软件需要测试的某个部位

95、用例评审一般使用什么方式些人参与评审/h2>

检查单,一般由测试人员进行

96、测试计划由谁编写试需求说明书由谁编写试用例谁编写试总结谁写/h2>

测试负责人。测试人员。测试人员。测试负责人

97、软件投入运行后还需要测试吗要哪些测试/h2>

需要测试。维护测试(包含升级测试)、数据迁移测试、备份恢复测试、灾难恢复测试等。

98、SP2是什么意思/h2>

第二个版本的服务包或补丁包

99、给你一个 站,你如何测试/h2>

1)首先,查找需求说明、 站设计等相关文档,分析测试需求。
2)制定测试计划,确定测试范围和测试策略,一般包括以下几个部分:功能性测试、界面测试、性能测试、兼容性测试、数据库测试、安全性测试。
3)设计测试用例
功能性测试可以包括,但不限于以下几个方面:
链接测试。链接是否正确跳转,是否存在空页面和无效页面,是否有不正确的出错信息返回。
提交功能的测试。
多媒体元素是否可以正确加载和显示。
多语言支持是否能够正确显示选择的语言。

界面测试:
颜面风格是否统一、美观
颜面布局是否合理,重点内容是否突出
控件能不能正常使用
对于必须但未安装的控件,是否提供自动下载并安装的功能
文字检查

性能测试一般从以下两个方面考虑:
压力测试、负载测试。

数据库测试要具体决定是否需要开展:
数据库一般需要考虑连结性,对数据的存取操作、数据内容的验证等方面。

安全性测试:
基本的登录功能检查
是否存在溢出错误、导致系统崩溃或者权限泄露
相关开发语言的常见安全性问题检查,例如SQL注入等

兼容性测试,根据需求说明的内容,确定支持的平台组合:
浏览器的兼容性
操作系统的兼容性
软件平台的兼容性
数据库的兼容性

4)开展测试,并记录缺陷
合理的安排调整测试进度,提前获取测试所需的资源、建立管理体系(如:需求变更、风险、配置、测试文档、缺陷 告、人力资源等内容)
5)定期评审,对测试进行评估和总结,调整测试内容。

100、一台客户端有300个客户与300个客户端有300个客户对服务器施压,有什么区别/h2>

1)300个用户在一个客户端上
会占用客户机更多的资源,而影响测试的结果。线程之间可能发生干扰,而产生一些异常
需要更大的带宽
IP地址的问题,可能需要使用IP欺骗来绕过服务器对于单一IP地址最大连接数的限制
不必考虑分布式管理的问题
2)用户分布在不同的客户端上
需要考虑使用控制器来整体调配不同客户机上的客户
需要给予相应的权限配置和防火墙设置

101、试述软件的概念和特点件复用的含义件包括那些/h2>

软件是计算机系统中与硬件相互依存的另一部分,与计算机系统操作有关的计算机程序、规程、规则、以及可能有的文件、文档和数据。
软件复用(sotfware reuse):将已有软件的各种有关知识用于建立新的软件,以减缩软件开发和维护的费用。软件复用是提高软件生产力和质量的一种重要技术。早期的软件复用主要是代码级复用,被复用的知识专指程序,后来扩大到包括领域知识、开发经验、设计决定、体系结构、需求、设计、代码和文档等一切有关方面。
可以被复用的软件成分一般称作可复用构建

102、软件配置管理的作用件配置包括什么/h2>

软件配置管理(software configuration management,SCM)是一种标识、组织和控制修改的技术。
软件配置管理应用于整个软件工程过程。
在软件建立时变更时不可避免的,而变更加剧了项目中软件开发者之间的混乱。SCM活动的目标就是为了表示变更、控制变更、确保变更正确实现并向其他人员 告变更。从某种角度讲,SCM是一种标识、组织和控制修改的技术,目的是使错误降为最小并最有效地提高生产效率。
软件配置包括以下内容:配置项识别、工作空间管理、版本控制、变更控制、状态 告、配置审计。

103、什么是软件质量

1)概括地说,软件质量就是“软件与明确的、隐含的定义的需求相一致的程度”
2)具体地说,软件质量是软件符合明确叙述的功能和性能需求,文档中明确描述的开发标准,以及所有专业开发的软件都要具备的隐形特征的程度
软件质量包括准确性、健壮性、效率、完整性、可用性、风险(产品运行);可理解性、可维修性、灵活性、可测试下(产品修改);可移植性、可再用性、互运行性(产品转移)

104、目前主要的测试用例方法是什么/h2>

白盒测试:逻辑覆盖(语句覆盖、判定/分支覆盖、条件覆盖、条件-判定覆盖、多条件组合覆盖)、基本路径覆盖
黑盒测试:测试大纲法、场景法、等价类划分、边界值分析法、错误猜测法、判定表法、随机测试、探索性测试。
测试大纲法:把软件中的所有功能按照从大到小罗列出来,一般用来做功能拆分。
场景法:对一个软件窗口或者一个比较完整的功能来讲,从场景法来写比较好,他会考虑这个软件操作的正常流程以及各种备选流程
等价类划分:可以与测试大纲法、场景法结合,通常对有输入的地方进行一个合法、非法的分类
边界值分析法:取最小值、最大值、比最小值小、比最大值大,一般取4个
错误猜测法:那些测试容易出现错误
判定表法:输入之间有关联的
随机测试:测试完成以后,随机点一下键盘做补充
探索性测试

105、软件的安全性应从哪些方面去测试/h2>

软件安全性测试包括程序、数据库的安全性测试
根据系统安全指标不同测试策略也不同。
1)用户认证安全的测试要考虑的问题:
明确区分系统中不同用户权限、系统中会不会出现用户冲突、系统会不会因为用户的权限的改变造成混乱、用户登陆密码是否可见、可复制、是否可以通过绝对途径登陆系统(拷贝用户登陆后的链接直接进入系统)、用户退出系统后是否删除了所有鉴权标记、是否可以使用后退键而不输入口令进入系统
2)系统 络安全的测试要考虑的问题:
测试采取的防护措施是否正确配置好、有关系统的补丁是否打上,模拟非授权攻击、看防护系统是否坚固,采用成熟的漏洞检查工具检查系统相关漏洞、采用各种木马检查工具检查系统木马情况、采用各种防外挂工具检查系统各组程序的外挂漏洞
3)数据库安全考虑的问题
系统数据是否机密(比如对银行系统,这一点就非常重要,一般的 站就没有太高要求)、系统数据的完整性、系统数据的可管理性、系统数据的独立性、系统数据可备份和恢复能力(数据备份是否完整,可否恢复,恢复是否可以完整)

106、什么是测试用例,什么是测试脚本,两者的关系是什么/h2>

测试用例是为实施测试而向被测试系统提供的输入数据、操作或各种环境设置以及期望结果的一个特定的集合。
测试脚本是为了进行自动化测试编写的脚本。
测试脚本的编写一般都需要对应相应的测试用例。

107、软件测试各个阶段通常完成什么工作个阶段的结果文件是什么括什么内容/h2>

1)单元测试阶段:各独立单元模块在于系统的其他部分相隔离的情况下进行测试,单元测试针对每一个程序模块进行正确性检验,检查各个程序模块是否正确地实现了规定的功能。生成单元测试 告,提交缺陷 告。
2)集成测试阶段:集成测试是在单元测试的基础上,测试在将所有的软件单元模块按照概要设计规格说明的要求组装成模块、子系统或系统的过程中各部分工作是否达到或实现现有技术指标及要求的活动。生成集成测试 告,提交缺陷 告。
3)系统测试阶段:将通过确认测试的软件,作为整个给予计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际运行环境下,对计算机系统进行全面的功能覆盖。提交测试 告总结和缺陷 告。
4)验收测试阶段:一般由用户进行测试,或者是用户委托第三方进行测试,主要研究软件是否满足用户的使用需求,提升用户的信心。出具验收测试 告。

108、测试人员在软件开发过程中的任务是什么/h2>

尽可能早的找出系统中的bug
避免软件开发过程中缺陷的出现
衡量软件的品质、保证系统的质量
关注用户的需求,并保证系统符合用户的需求

109、如何测试一个水杯/h2>

功能:用水杯装水看漏不漏,水能不能被喝到
安全性:杯子有没有毒或细菌
可靠性:杯子从不同的高度落下的损坏程度
可移植性:杯子在不同地方、温度等环境下是否可以正常使用
兼容性:杯子是否能容纳果汁、白水、酒精、汽油等
易用性:杯子是否烫手、是否有防滑措施、是否方便饮用
用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述
疲劳测试:将杯子盛上水放24h检查泄漏时间和情况;盛上汽油放24h检查泄露时间和情况等
压力测试:用根针并在针上面不断加重量,看压强多大时会穿透

110、测试计划工作的目的是什么试计划文档的内容应该包括什么中哪些是最重要的/h2>

1)软件测试计划是指导测试过程的纲领性文件:
领导能够根据测试计划进行宏观调控,进行相应资源配置等
测试人员能够了解整个项目测试情况以及项目测试不同阶段的所要进行的工作等
以便其他人员了解测试人员的工作内容,进行有关配合工作
2)测试计划包含了产品概述、测试策略、测试方法、测试区域、测试配置、测试周期、测试资源、测试交流、风险分析等内容。借助软件测试计划,参与测试的项目成员,尤其是测试人员,可以明确测试任务和测试方法,保持测试实施过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各种变更。
3)测试计划编写6要素(5w1h)
why:为什么要进行这些测试
what:测试哪些方面,不同阶段的工作内容
when:测试不同阶段的起始时间
where:相应文档,缺陷的存放位置,测试环境等
who:项目有关人员组成,安排那些测试人员进行测试
how:如何去做,使用哪些测试工具以及测试方法进行测试
4)测试计划和测试详细规格、测试用例之间是战略和战术的关系,测试计划主要是从宏观上规划测试活动的范围、方法和资源配置,而测试详细规格、测试用例是完成测试任务的具体战术。所以其中最重要的是测试策略和测试方法(最好是能先评审)

111、您认为测试人员同开发人员的沟通过程中,如何提高沟通的效率和改善沟通的效果持测试人员同开发团队中其他成员良好的人际关系的关键是什么/h2>

1)尽量面对面的沟通,其次是能直接通过电话沟通,如果只能通过Email等非及时沟通工具的话,必须对要沟通的主题理解深刻以及能表达清楚
2)运用一些测试管理工具进行管理也是较有效的方法,同时要注意在工具中对bug有准确的描述
3)在团队中建立测试人员与开发人员良好沟通中注意以下几点:

112、你对测试最大的兴趣在哪里什么/h2>

最大的兴趣,感觉这是一个有挑战性的工作
测试是一个经验行业,工作越久越能感受到做好测试的难度和乐趣
通过自己的工作,能使软件产品越来越完善,从中体会到乐趣
注意以下几个方面:/
尽可能地巧合招聘企业的技术路线来表达你的兴趣,例如该企业是数据库应用地企业,那么表示你的兴趣在数据库地测试,并且希望通过测试提升自己的数据库掌握能力
表明你做测试的目的是为了提升能力,也是为了更好地做好测试
不要过多地表达你的兴趣在招聘企业的范畴之外

113、什么是测试覆盖量/h2>

是指完成的测试工作目标量占总目标量的百分比,有很多分类
软件测试覆盖率常用的计算公式
功能覆盖率=至少被执行一次的测试功能点数/测试功能总点数
需求覆盖率:被验证的需求数量、总的需求数量
(用例)覆盖率=至少被执行一次的测试用例数/应执行的测试用例总数
语句覆盖率=至少被执行一次的语句数量/有效的程序代码行数
判定覆盖率=判定结果被评价的次数/判定结果总数
条件覆盖率=条件操作数值至少被评价一次的数量/条件操作数值的总数

114、一个好的测试用例,有哪些特点/h2>

1)用例要完整、简洁、一致
至少含有编 、标题、操作步骤和预期结果
2)用例要表明测试目的
3)用例覆盖程度要高
4)用例能够使工作量最小化
5)用例描述正确、规范
含有正确的、规范的测试标题和编
6)用例的分类以及描述要足够清晰ssch’g’c’d’g’b7)用例要具有可测试性
8)测试用例易于维护
如果被测对象有所升级,测试用例的说明或者脚本是不是容易维护呢br> 9)可复用性
10)可重复性
不管谁执行此用例,结果一样
11)可追踪性
用例能追踪到一个具体的需求

115、测试结束的标志是什么/h2>

全部测试用例都执行完成
未修改bug都被确认或置为应有状态,暂缓修改的问题都有详尽的解释
1测试收尾工作结束
测试总结完成
项目处于试运行或上线阶段
在测试计划中定义结束标准:
如计划中规定:系统在一定性能下平稳运行72小时,本版本中没有严重的bug,普通bug的数量在3成以下,bug修复率90%以上;
实际测试达到上述要求,再有开发经理、测试经理、项目经理共同签字,认同测试结束,版本即可发布

116、如何全面测试一款产品,请以手机短信功能为例来辅助说明,前提是手机自带的短信功能,并非微信、qq这种软件

117、你手中的笔有多少用途,发挥你的想象力

写、画
染色
承重
当书签
当筷子
用来扎人
用来掏掉进笔记本键盘的小东西
用于去除缝隙的小东西
拿在手里转着玩、消遣
用来碰电门

118、判断字符串回文

回文序列是指正序和反序都相同的字符串,如‘A’,‘BAB’。实现一个函数,判断输入的字符串是否为回文,并写出测试用例。
需求分析:回文是正反都一样的字符串
举例子找规律:
奇数个字符:A BAB
012
【0=2】
总共n个字符,第i个第n-1-i个,需要判断3/2次
偶数个字符:AA ABBBA ABCCBA
01 01 2 3 0 1 2345
[0]=[1] [0] =[3] [1]=[2] [0]=[5] [1]=[4] [2]=[3]
总共n个字符,第i个字符第n-1-i个,需要判断n/2次
总体的规律:总共n个字符,第i个=第n-1-i个,需要判断n/2下取整数
思路:
需要一个字符串参数,表示回文
循环判断,循环次数=n/2
条件判断 if第i个=第n-1-i个,下一个是n/2结束
不相等直接退出
测试:
空串、一个字符、两个字符(对称、不对称)、五个字符(对称、不对称)

白盒角度:
这里的条件覆盖等价于判定覆盖,n!=0成立与不成立均测到
for:循环0次不现实,所以不需要测,1次以上
s[i] == s[n – 1 – i] 条件覆盖等价于判定覆盖
i == n / 2 条件覆盖等价于判定覆盖

119、Function(A,B,C)是一个判断三角形形状的函数,其中A,B,C是三个变量,分别代表三角形的三个边,请设计一组测试用例,来测试这个函数是否正确。

需求分析:
判断三角形的形状
思路:
三个参数(double)
使用异常解决输入不是数的问题
三个边都是正的
三边符合关系
三角形的类型(等边、等腰、直角、普通)
c++代码:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年8月5日
下一篇 2021年8月6日

相关推荐