软件测试工程师笔试试题(大集合).doc
《软件测试工程师笔试试题(大集合).doc》由会员分享,可在线阅读,更多相关《软件测试工程师笔试试题(大集合).doc(12页珍藏版)》请在冰豆网上搜索。
![软件测试工程师笔试试题(大集合).doc](https://file1.bdocx.com/fileroot1/2022-10/16/aa7fc272-1106-4ace-99a6-d2f087715b88/aa7fc272-1106-4ace-99a6-d2f087715b881.gif)
软件测试工程师笔试试题
软件测试工程师笔试试题
01.为什么要在一个团队中开展软件测试工作?
答:
首先软件测试是一项系统工程,涉及到测试面太广,就测试类型而言就有不下56种软件测试类型,如常见的功能测试、性能测试、可靠性测试、稳定性测试、兼容性测试、国际化测试、集成测试、用户确认测试等等,一个人是无法承担一个软件系统的各个方面的测试,因此分工合作的测试团队就变得尤为重要。
测试思维的不同导致有时即使是同样的测试内容由两个不同的人来测试也许都不是重复劳动。
02.您是否了解以往所工作的企业的软件测试过程?
如果了解,请试述在这个过程中都有哪些工作要做?
分别由哪些不同的角色来完成这些工作?
答:
测试过程缺乏可视性、产品级测试过程缺乏规范指导、测试经验缺乏有效积累、测试技术发展缺乏一致方向、开发测试协调成本太高、缺陷修复过程混乱、测试质量保证活动缺乏流程依据。
阶段点
产品形态
测试交付件
TR1
产品包需求
产品可测试性需求
CDCP
产品包开发主计划
产品包验证主计划
TR2
产品系统设计规格
产品测试规格
TR3
产品子系统设计规格
特性测试规格
PDCP
产品3/4级E2E计划
总体测试策略、测试与验证计划
TR4
产品Build
特性测试方案、测试用例
TR4A
原型机(功能)
SDV测试报告
TR5
初始产品
SIT测试报告
TR6
量产产品
SVT测试报告
十分清楚××的软件测试过程,就软件系统测试过程而言,通常把测试分为测试分析与计划、测试设计、测试执行、测试评估几个大的流程环节。
产品测试需求分析
产品总体测试策略
测试与验证计划
我们需要测什么?
什么样的测试过程?
时间、干系人、资源、目标、风险?
我们如何具体实现?
特性测试方案/用例
测试执行策略
测试过程质量
类别
质量目标
定义
质量
软件/硬件/逻辑缺陷密度
缺陷数/折合代码规模
成本
单位缺陷检测成本
测试总工作量/缺陷数
效率
测试效率
测试对象规模/测试总工作量
进度
进度偏移
不同测试阶段的进度偏移
持续时间偏差
不同测试阶段的持续时间偏差
评审
测试设计评审发现缺陷密度
测试设计文档评审的质量
03.您是否了解以往所工作的企业的软件开发过程?
如果了解,请试述一个完整的开发过程需要完成哪些工作?
分别由哪些不同的角色来完成这些工作?
(对于软件测试部分,可以简述)
04.您在以往的测试工作中都曾经具体从事过哪些工作?
其中最擅长哪部分工作?
05.您所熟悉的软件测试类型都有哪些?
请试着分别比较这些不同的测试类型的区别与联系(如功能测试、性能测试……)
答:
不同类型的测试会发现不同类型的BUG,测试类型是从不同的角度来分析和测试产品。
测试类型分析基本测试类型、增强测试类型等
序号
测试类型
SDV
SIT
备注
基本测试类型
1
功能测试(FunctionTest)
Ö
Ö
主要应在SDV阶段完成
2
兼容性测试(CompatibilityTest)
Ö
3
协议一致性测试(ProtocolConformanceTest)
Ö
Ö
主要应在SDV阶段完成
4
性能测试(PerformanceTest)
Ö
5
指标测试(ScalingTest)
Ö
Ö
两个阶段的测试侧重点应不同
6
压力测试(StressTest)
Ö
7
长时间测试(LongevityTest)
Ö
8
配置测试(ConfigurationTest)
Ö
Ö
9
恢复测试(RecoveryTest)
Ö
Ö
主要应在SDV阶段完成
10
故障注入测试(FaultInsertTest)
Ö
Ö
主要应在SDV阶段完成
11
安装测试(InstallationTest)
Ö
12
流控测试(TrafficControlTest)
Ö
Ö
SDV、SIT各有侧重点
增强测试类型
13
备份测试(BackupTest)
Ö
14
安全性测试(SecurityTest)
Ö
Ö
SDV、SIT各有侧重点
15
易用性测试(UsabilityTest)
Ö
16
可维护性测试(MaintainabilityTest)
Ö
17
QoS测试(QoSTest)
Ö
18
网络拓扑测试(TopologyTest)
Ö
19
互操作性测试(InteroperabilityTest)
Ö
1.功能测试,测试系统提供的功能是否能够正确、完全满足用户要求。
2.兼容性测试,指对两个或两个以上的功能实体相互交换信息能力的测试,分向下兼容和周边兼容性(周边兼容性指产品与产品之间、系统设备与终端设备之间、软件产品与操作系统、数据库之间的兼容性)。
3.协议一致性测试,测试系统是否符合相关的协议、标准。
4.性能测试,针对系统是否达到规定的性能需求进行测试,如容量和响应时间。
5.指标测试,是指对系统各部分的参数进行测试。
6.压力测试,通过是系统达到或超过其设计的最大负荷来检验其在非正常状态下的特性。
7.长时间测试,考查系统在长时间下运行下是否可以稳定提供功能、性能的能力的测试。
8.配置测试,验证系统能够在不同的系统配置(软件、硬件)环境下是否正常工作的测试。
9.恢复测试,测试系统从硬件或软件故障种恢复的能力。
10.故障注入测试,是指人为在系统种引入故障,考察系统对故障的容错能力的一种测试方法。
11.安装测试,验证系统能够被成功安装、升级的测试。
12.备份测试,测试系统在软件或硬件故障时备份数据的能力。
13.安全性测试,测试软件产品保护信息和数据的能力,如非法用户或系统不能阅读和修改信息和数据,合法用户或系统不会被拒绝访问,以保证数据的保密性和完整性。
系统安全性测试内容包括设备本身数据的安全性和保密性、系统的登录、密码验证、用户管理、内部通信协议测试、病毒的检测、防火墙测试、WEB安全性测试、数据库安全性测试等。
14.易用性测试,评价系统的终端用户使用或学习系统,支持用户任务系统功能的效率和最终用户失误中恢复的能力。
15.可维护性测试,针对系统在维护性方面的功能、性能进行测试。
16.QoS测试,决定用户对服务满意程度级别也就时服务质量测试。
17.网络拓扑测试,在不同网络拓扑下进行系统的功能测试,也叫组网测试。
18.互操作性测试,与其他厂家相关产品的对接/互通测试。
06.请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。
黑盒测试,指测试人员不必关心程序具体如何实现的一种测试方法,根据软件的规格对软件进行各种输入盒观察软件各种输出结果来发现软件的缺陷的测试。
这类测试不考虑软件内部的运作原理,因此对软件用户来说就像一个黑盒子。
白盒测试,根据软件内部的工作原理分析来进行,基于代码的测试,测试人员通过阅读程序代码或者通过使用开发工具中的单步调试来判断软件的质量。
单元测试、指一段代码的基本测试,其实际大小未定,通常时一个函数或者子程序,一般由开发人员执行。
集成测试,被测试系统的所有组件都集成在一起,找出被测试系统组件之间关系和接口中的错误,该测试一般在单元测试后进行。
系统测试,在经过开发人员的集成测试后,可正式将软件编译构建成初步的测试版本,之后要进行的测试就时系统测试。
系统测试是针对系统进行的测试,这包括所应支持的软件、硬件、操作系统及所应集成的第三方软件。
系统测试通常称为QATesting。
验收测试,也叫用户确认测试,系统开发生命周期的一个阶段,用户或独立测试人员根据测试计划和结果对系统进行测试和验收,用户根据测试结果决定是否接受系统。
07.测试计划工作的目的是什么?
测试计划工作的内容都包括什么?
其中哪些是最重要的?
测试计划工作的目的主要有三个,一个就是让软件测试变得更加顺利,一个是可以让参与人员之间的沟通更加畅通,最后一个就是可以让软件测试采取系统化的方式来进行,同时也易于管理。
测试计划工作的内容至少应该包括5W,人、事、时、地、物。
真正的测试计划是实际指导自己实施测试的一套想法。
测试计划的目标是所选的测试过程能够是测试控制在项目环境中,同时又能充分利用资源,完成自己的任务。
给定五种资源和约束,开发、需求、测试团队、测试实验室、任务。
08.您认为做好测试计划工作的关键是什么?
答:
测试计划的质量与是否很好地执行了任务以及是否很好地考虑了像以下提出的问题。
1.监视影响测试计划的主要问题
2.明确任务
3.分析产品
4.分析产品风险
5.设计测试策略
6.条件计划
7.共享测试计划。
测试计划的功能是测试计划能够预期帮助测试人员完成的工作。
测试计划的质量准则
1.有用性,测试计划会有效支持其提供的功能
2.准确性,测试计划文档是否准确地与事实描述保持一致
3.高效性,测试计划是否能够高效地利用己有的资源?
4.可适配性,测试计划是否能够适应项目中合理的变更和不可预测性
5.清晰性,测试计划是否自我一致并且足够明确
6.可实用性,文档是否简练,可维护性并有很好的结构
7.兼容性,是否满足外部提出的需求
8.依据,是否有效测试计划过程的产品
9.可行性,是否没有超过必须使用该计划的机构能力。
另外一些提示:
1、快速找出重要问题
2、关注风险
3、尽可能提高多样性
4、避免编写过死的脚本
5、根据需求测试
6、我们并不孤独
7、促进可测试性
8、测试计划不要太通用
9、点明即可
10、不要限制人员
11、受测试进度制约
12、解决瓶颈问题
13、快速反馈
14、测试人员不仅仅是测试人员
15、评审文档
09.您所熟悉的测试用例设计方法都有哪些?
请分别以具体的例子来说明这些方法在测试用例设计工作中的应用。
答:
测试用例设计的方法有:
测试用力目前没有经典的定义,比较通常的说法是:
指针对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。
内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等。
等价类划分、边界值、错误推测法、正交分解化、判定树/因果图、对等区间划分法。
10.您认为做好测试用例设计工作的关键是什么?
答:
好的测试用例设计工作的关键是测试用例能够覆盖产品测试规格的所有点。
做好测试用力设计工作的关键分析出产品测试规格适合的测试用例方法,以保障尽可能少的测试用例能够覆盖所有的测试规格。
11.请以您以往的实际工作为例,详细的描述一次测试用例设计的完整的过程。
12.您以往的工作中是否曾开展过测试用例的评审工作?
如果有,请描述测试用例评审的过程和评审的内容。
13.您以往是否曾经从事过性能测试工作?
如果有,请尽可能的详细描述您以往的性能测试工作的完整过程。
14.您在从事性能测试工作时,是否使用过一些测试工具?
如果有,请试述该工具的工作原理,并以一个具体的工作中的例子描述该工具是如何在实际工作中应用的。
15.您认为性能测试工作的目的是什么?
做好性能测试工作的关键是什么?
答:
性能测试针对系统是否达到规定的性能需求进行测试,如容量和响应时间。
性能测试的
目的根据性能测试的类型不同而不同,主要的性能测试目的有:
通过测试确认软件是否满足产品的性能需求,同时发现系统中存在