- 相关推荐
软件测试面试题笔试部分
在学习、工作生活中,我们都可能会接触到试题,借助试题可以为主办方提供考生某方面的知识或技能状况的信息。大家知道什么样的试题才是规范的吗?以下是小编精心整理的软件测试面试题笔试部分,希望对大家有所帮助。
软件测试面试题笔试部分 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)
(Y:Yes? N:No)
二、选择题
1.软件验收测试的合格通过准则是:(ABCD)
A. 软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
B. 所有测试项没有残余一级、二级和三级错误。
C. 立项审批表、需求分析文档、设计文档和编码实现一致。
D. 验收测试工件齐全。
2.软件测试计划评审会需要哪些人员参加?(ABCD)
A.项目经理
B.SQA 负责人
C.配置负责人
D.测试组
3.测试设计员的职责有:(BC)
A.制定测试计划
B.设计测试用例
C.设计测试过程、脚本
D.评估测试活动
三、问答题
问题1. 为什么要在一个团队中开展软件测试工作?
答:任何软件在开发过程中都会留下缺陷,带有缺陷的软件产品如果提交出去,可能会给公司带来不可估量的损失,我们必须在客户之前发现尽可能多的问题,从而保障客户满意。而发现问题的这个过程称之为测试。
问题2. 简述你在以前的工作中做过哪些事情,比较熟悉什么。
答:软件测试员的主要工作是系统测试和自动化测试,也曾少量涉及性能测试。在系统测试中,主要是对BOSS系统的业务逻辑功能,以及软交换系统的`Class 5特性进行测试。性能测试中,主要是进行的压力测试,在各个不同数量请求的情况下,获取系统响应时间以及系统资源消耗情况。自动化测试主要是通过自己写脚本以及一些第三方工具的结合来测试软交换的特性测试。
问题3. 测试计划工作的目的是什么?测试计划文档的内容应该包括什么?其中哪些是最重要的?
答:软件测试计划是指导测试过程的纲领性文件。
包含了产品概述、测试策略、测试方法、测试区域、测试配置、测试周期、测试资源、测试交流、风险分析等内容。借助软件测试计划,参与测试的项目成员,尤其是测试管理人员,可以明确测试任务和测试方法,保持测试实施过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各种变更。
测试计划和测试详细规格、测试用例之间是战略和战术的关系,测试计划主要从宏观上规划测试活动的范围、方法和资源配置,而测试详细规格、测试用例是完成测试任务的具体战术。所以其中最重要的是测试测试策略和测试方法(最好是能先评审)。
问题4. 您认为做好测试计划工作的关键是什么?
答:1)明确测试的目标,增强测试计划的实用性
2)坚持“5W”规则,明确内容与过程,what、why、when、where、how
3)采用评审和更新机制,保证测试计划满足实际需求
4)分别创建测试计划与测试详细规格、测试用例。
软件测试面试题笔试部分 2
一、选择题
1.软件可靠性是指在指定的条件下使用时,软件产品维持规定的性能级别的能力,其子特性( )是指在软件发生故障或者违反指定接口的情况下,软件产品维持规定的性能级别的能力。
A.成熟性; B.易恢复性; C.容错性; D.可靠性依从性
2.关于软件质量的描述,正确的是______
A.软件质量是指软件满足规定用户需求的能力;
B.软件质量特性是指软件的功能性、可靠性、易用性、效率、可维护性、可移植性;
C.软件质量保证过程就是软件测试过程;
D.以上描述都不对
3.______方法根据输出对输入的依赖关系设计测试用例。
A.路径测试 B.等价类 C.因果图 D.边界值
4.下列关于软件验收测试的合格通过准则错误的是:______
A.软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求;
B.所有测试项没有残余一级、二级和三级错误;
C.立项审批表、需求分析文档、设计文档和编码实现不一致;
D.验收测试工件齐全
5.测试设计员的职责有:______
①制定测试计划 ②设计测试用例 ③设计测试过程、脚本 ④评估测试活动
A.①④ B.②③ C.①③ D.以上全是
6.对于业务流清晰的系统可以利用D贯穿整个测试用例设计过程广在用例中综
合使用各种测试方法,对于参数配置类的软件,要用C选择较少的组合方式达到最佳效果,如果程序的功能说明中含有输入条件的组合情况,则一开始就可以选用B和判定表驱动法
A.等价类划分 B.因果图法 C.正交试验法 D.场景法、
7.下列软件实施活动的进入准则描述错误的是:______
A.需求工件已经被基线化
B.详细设计工件已经被基线化
C.构架工件已经被基线化
D.项目阶段成果已经被基线化
8.10、正式的技术评审FTR(Formal Technical Review)是软件工程师组织的软
件质量保证活动,下面关于FTR指导原则中错误的是______
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.下列关于软件测试的叙述中,选择出全部正确的一组______
(1) 用黑盒法测试时,测试用例是根据程序内部逻辑设计的
(2) 尽量用公共过程或子程序去代替重复的代码段
(3) 测试是为了验证该软件已正确地实现了用户的要求
(4) 对于连锁型分支结构,若有n个判定语句,则有2n条路径
(5) 尽量采用复合的条件测试,以避免嵌套的分支结构
(6) GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁
(7) 发现错误多的程序模块,残留在模块中的错误也多
(8) 黑盒测试方法中最有效的是因果图法
(9) 在做程序的单元测试时,桩(存根)模块比驱动模块容易编写
(10) 程序效率的提高主要应通过选择高效的算法来实现
A.(4)(5)(6)(7)(10) B.(1)(2)(4)(5)(7)
C.(2)(4)(5)(7)(9) D.以上描述全部正确
14.下列关于alpha、beta 测试的描述中正确的是:______
A.alpha 测试需要用户代表参加;
B.beta 测试是不是验收测试的一种;
C.alpha 测试不需要用户代表参加;
D.beta 测试是系统测试的一种;
15.关于自动化测试局限性的描述,以下错误的描述有______
A.自动化测试不能取代手工测试 B.自动测试比手工测试发现的缺陷少 C.自动测试不能提高测试覆盖率 D.自动化测试对测试设计依赖性极大
16.PSP是指个人软件过程 ,是一种可用于( A )、( B )和( C )个人软
件工作方式的自我改善过程。
A、控制 B、管理 C、改进
D、高效 E、充分 F、适宜
二、填空题
1.软件验收测试包括:正式验收测试,alpha测试,beta测试。
2.软件的六大质量特性包括:功能性、可靠性、可用性、效率 、稳定性、可移植性
3.软件测试按照不同的划分方法,有不同的分类:
(1)按照软件测试用例的设计方法而论,软件测试可以分为白盒测试法和黑盒测试法。
(2)从是否执行程序的角度,软件测试可以分为静态测试和动态测试
(3)按照软件测试的策略和过程来分类,软件测试可分为单元测试、集成测试、系统测试、验证测试和确认测试。
4.软件生命周期包括制定计划、需求分析定义、软件设计、程序编码、软件测试、软件运行、软件维护、软件停用等8个阶段
5.软件测试的模型分为:V模型、W模型、X模型、H模型、测试驱动模型
6.系统测试的策略有:功能测试,性能测试,可靠性测试,负载测试,易用性测试,强度测试,安全测试,配置测试,安装测试,卸载测试,文挡测试,故障恢复测试,界面测试,容量测试,兼容性测试,分布测试,可用性测试
7.一个文本框要求输入6位数字密码,且对每个帐户每次只允许出现三次输入错误,对此文本框进行测试设计的`等价区间有:密码位数:6位 和 非6位的;密码内容:数字的 和 非数字的;输入次数:三次以内 和 超过三次
三、判断题
1.软件测试 的目的是尽可能多的找出软件的缺陷。(Y )
2.验收测试是由最终用户来实施的。(N )
3.要充分注意软件测试中的群集现象。(Y )
4.单元测试能发现约80% 的软件缺陷。(Y )
5.代码评审是检查源代码是否达到模块设计的要求。(N )
6.好的测试方案是极可能发现迄今为止尚未发现的错误。(N)
7.测试人员要坚持原则,缺陷未修复完坚决不予通过。(N )
8.代码评审员一般由测试员担任。(N )
9.我们可以人为的使得软件不存在配置问题。(N )
10.集成测试计划在需求分析阶段末提交。(N )
11.软件测试就是为了验证软件功能实现的是否正确,是否完成既定目标的活动,所以软件测试在软件工程的后期才开始具体的工作。 (N)
12.发现错误多的模块,残留在模块中的错误也多。( Y )
13.测试人员在测试过程中发现一处问题,如果问题影响不大,而自己又可
以修改,应立即将此问题正确修改,以加快、提高开发的进程。(N)
四、简答题
1.什么是软件测试
为了发现程序中的错误而执行程序的过程
2.白盒测试有几种方法
总体上分为静态方法和动态方法两大类。
静态:关键功能是检查软件的表示和描述是否一致,没有冲突或歧义 动态:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖。
3.系统测试计划是否需要同行审批,为什么需要,系统测试计划属于项目阶段性关键文档,因此需要评审。
4.简述软件测试中的“80-20原则”
(1)80% 的软件缺陷常常生存在软件 20% 的空间里;
(2)测试工作中能够发现和避免 80% 的软件缺陷,此后的验收测试等能够帮助我们找出剩余缺陷中的 80% ,最后的 5% 的软件缺陷可能只有在系统交付使用后用户经过大范围、长时间使用后才会曝露出来。
(3)80% 的软件缺陷可以借助人工测试而发现, 20% 的软件缺陷可以借助自动化测试能够得以发现。由于这二者间具有交叉的部分,因此尚有 5% 左右的软件缺陷需要通过其他方式进行发现和修正
5.给你辆自行车,你认为最需要检查的是哪些地方?为什么?若要保证质量必须要检查三个部件,是什么?为什么?
6.性能测试的目的是什么,做好性能测试的关键是什么
1.评估系统的能力,测试中得到的负荷和响应时间数据可以被用于验证所计划的模型的能力,并帮助作出决策。
2.识别体系中的弱点:受控的负荷可以被增加到一个极端的水平,并突破它,从而修复体系的瓶颈或薄弱的地方。
3.系统调优:重复运行测试,验证调整系统的活动得到了预期的结果,从而改进性能。
4.检测软件中的问题:长时间的测试执行可导致程序发生由于内存泄露引起的失败,揭示程序中的隐含的问题或冲突。
5.验证稳定性(resilience)可靠性(reliability):在一个生产负荷下执行测试一定的时间是评估系统稳定性和可靠性是否满足要求的唯一方法。
做好性能测试工作的关键是强度测试(Stress Test): 强度测试
7.测试人员在软件开发过程中的任务是什么?(初级)(5分)
1、寻找Bug;
2、避免软件开发过程中的缺陷;
3、衡量软件的品质;
4、关注用户的需求。
8.一个缺陷测试报告的组成
(1)测试软件项目名称,每个要测试软件项目都有唯一的名称,有的公司对项目还有特定的编号。
(2)测试软件版本号,测试周期内,一般需要测试多个软件版本,报告错误时,一定要正确填写产生错误的软件版本号。
(3)测试者名称,便于分清责任,便于管理。
(4)测试日期与时间,便于分析和统计错误报告信息。
(5)测试软件环境,包括操作系统和其他必要的软件程序。
(6)测试硬件环境,包括测试计算机和其他测试设备的配置信息。
(7)错误描述,简明的描述错误的特征,便于查询和快速浏览。包含以下几个方面:
a) 错误标识编号 (ID#) ,每个错误都有一个唯一的标识编号,方便查询。
b) 错误类型,根据错误类型,分配给适当的人员处理错误。
c) 错误级别,错误的严重程度和处理的优先级,优先处理高级别的错误。
d) 错误状态,错误状态表明错误是否已经处理和将怎样处理,根据错误状态,采用适当的处理方法。
e) 错误处理者名称,便于分清责任,便于管理。
f) 重现错误的操作步骤,便于重现错误,修复错误和验证错误。
g) 期望的结果,描述满足设计要求的结果。
h) 实际测试结果,描述实际测试后得到的结果。
i) 必要的附图,便于确认错误的表现形式和错误位置。
(8)测试者的建议等注释,便于错误处理者快速和正确处理错误
五、应用题
1.输入三个整数a、b、c,通过程序判定是否构成三角形。要求输入a、b、c必须满足a≤200,b≤200,c≤200。请用黑盒测试方法编制测试用例
2.一个有广告的花杯子,尽可能多的设计测试用例
3.请设计一个关于ATM自动取款机的测试用例
1.功能:
a) ATM所识别卡的类型
b) 密码验证(身份登陆、是否为掩码、输入错误密码时是否提示,连续三次错误吞卡等);
c) 取款功能:
i.金额多少的限制,单次最大最小提取金额、每天最大提取金额灯);
ii.取款币种的不同,如人民币、美元、欧元等
d) 是否提示客户操作完成后,打印相关操作信息;
e) 查询功能是否正常
f) 转账功能是否正常
g) 是否提示客户操作完成后,取回客户卡;
2.性能:
a) 是否有自动吞卡(非法客户\密码错误客户\规定时间内未完成相关操作功能的客户);如果有,有无报警功能(保密报警);
b) 平均无故障时间,平均故障修复时间,输入密码后验证时间,出钞票时间,查询余额等待时间
3.易用性
a) .ATM各个操作功能(硬件)是否正常、易懂;
b) .ATM 的界面显示是否友好;
c) .ATM是否支持英文操作;
d) .ATM是否在异常(断电、黑客入侵)有自动保护(报警)功能;
软件测试面试题笔试部分 3
一、测试总体
1.什么是软件测试?
答:为了发现程序中的错误而执行程序的过程
2.软件测试的目的?
答:首先,测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误的分布特征,可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。同时,这种分析也能帮助我们设计出有针对性地检测方法,改善测试的有效性。
其次,没有发现错误的测试也是有价值的,完整的测试是评定测试质量的一种方法。详细而严谨的可靠性增长模型可以证明这一点。
测试的目的是按照用户所需软件的质量,检查开发软件过程出现的bug, 使得开发人员及时修改,可以避免在开发结束的时候发现软件存在质量问题,避免公司不必要的损失。赢得用户对公司产品的认可。
测试的目的是以最少人力、物力和时间找出软件中潜在各种错误和缺陷,通过修正种错误和缺陷提高软件质量,回避软件发布后由于潜在的软件缺陷和错误造成的隐患带来的商业风险。
测试的附带收获是,它能够证明软件的功能和性能与需求说明相符合。实施测试收集到的测试结果数据为可靠性分析提供了依据。测试不能表明软件中不存在错误,它只能说明软件中存在错误。
3.软件测试的目标
答:发现尽可能多的错误。测试是一个为了寻找错误而运行程序的过程。一个好的测试案例是指很可能找到迄今为止尚未发现的错误的用例。一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。
4.软件测试的原则
1) 应当把"尽早地和不断地进行软件测试"作为软件开发者的座右铭。
2) 测试用例应由测试输入数据和对应的预期输出结果这两部分组成。
3) 程序员应避免检查自己的程序。
4) 在设计测试用例时,应包括合理的输入条件和不合理的输入条件。
5) 软件测试的原则
6) 充分注意测试中的群集现象。经验表明,测试后程序中残存的错误数目与该程序中已发现的错误数目成正比。
7) 严格执行测试计划,排除测试的随意性软件测试面试笔试题完全版软件测试面试笔试题完全版。
8) 应当对每一个测试结果做全面检查。
9) 妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护提供方便。
5.测试的职责
测试经理:
1、制定测试计划。
2、确保测试过程正常进行。
测试工程师
1、编写测试用例
2、搭建测试环境
3、执行测试
6.软件都有多少种分类?
答:根据功能的不同,电脑软件可以粗略地分成四个层次:
最贴近电脑硬件的是一些小巧的软件。它们实现一些最基本的功能,通常"固化"在只读存储器芯片中,因此称为固件。
系统软件包括操作系统和编译器软件等。系统软件和硬件一起提供一个"平台"。它们管理和优化电脑硬件资源的使用。
支持软件。包括图形用户界面、软件开发工具、软件评测工具、数据库管理系统、中间件等。
应用软件种类最多,包括办公软件、电子商务软件、通信软件、行业软件,游戏软件等等。
7.测试的主要方面
答:A、功能测试:a、链接测试b、表单测试c、Cookies 测试d、设计语言测试e、数据库测试
B、性能测试:a、连接速度测试b、负载测试c、压力测试
C、接口测试:a、服务器接口b、外部接口c、错误处理
D、可用性测试: a、导航测试b、图形测试c、内容测试d、整体界面测试
E、兼容性测试:a、平台测试b、浏览器测试c、视频测试d、Modem/连接速率测试f、打印机测试g、组合测试
F、安全测试:a、目录设置b、登录c、Session d、日志文件e、加密f、安全漏洞
G、代码合法性测试:a、程序代码合法性检查b、显示代码合法性检查
H、文档测试:
8.软件测试的对象
答:软件测试并不等于程序测试。软件测试应贯穿于软件定义与开发的整个期间。需求分析、概要设计、详细设计以及程序编码等各阶段所得到的`文档,包括需求规格说明、概要设计规格说明、详细设计规格说明以及源程序,都应成为软件测试的对象
9.什么是"测试案例"?
答:测试案例是一份文档,它描述了一个输入、反应、或者是与其相应的预期的响应,以便来判断应用软件的工作是否正常。测试案例应当包括测试标识、测试案例的.名称、目标、测试条件/设置、输入数据要求、步骤、以及预期的结果。
注:开发一个应用软件的测试案例的过程,需要全面、深入地考虑该软件的操作,所以有助于发现在其需求或设计里面的问题。因此,如果有可能,在开发周期中应当尽早准备测试案例。
10.怎么编写案例?
答:案例的编写与测试阶段的定义有很大的关系。系统测试和unit 测试的案例可能不同。总体而言测试案例根据系统的需求而定。
11.软件测试的两种方法
答:黑盒测试和白盒测试
黑盒:这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。黑盒测试又叫做功能测试或数据驱动测试。
白盒:此方法把测试对象看做一个透明的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。
12.测试结束的标准是什么?
答:1.用例全部执行。2.覆盖率达到标准。3.缺陷率达到标准。4.其他指标达到质量标准
13.软件的生命周期
答:软件生命周期是指一个计算机软件从功能确定、设计,到开发成功投入使用,并在使用中不断地修改、增补和完善,直到停止该软件的使用的全过程(从酝酿到废弃的过程)
14.什么是软件的生命周期?
生命周期从收到应用软件开始算起,到该软件不再使用为止。它有如下各方面的内容:
初始构思、需求分析、功能设计、内部设计、文档计划、测试计划、文档准备、集成、测试、维护、升级、再测试、逐步淘汰(phase-out)、等等。
15.软件测试按过程分为三个步骤
答:单元测试:单元测试又称模块测试,是针对软件设计的最小单位─ 程序模块,进行正确性检验的测试工作。其目的在于发现各模块内部可能存在的各种差错软件测试面试笔试题完全版默认。
单元测试需要从程序的内部结构出发设计测试用例。多个模块可以平行地独立进行单元测试。
集成测试:在运行(可能是不完整)的应用中保证软件单元被结合后能正常操作的测试执行的阶段
系统测试:当应用作为整体运行时的测试执行阶段
16.面向对象的设计如何影响测试?
答:好的面向对象的工程设计使得从代码追溯内部设计、再到功能测试,最后追溯到需求,成为一件容易的事。因为它对黑盒测试的影响很少(不需要了解应用软件的内部设计) ,而白盒测试只需针对该应用软件的对象。如果该应用软件设计得好,就可简化测试设计
17.软件带来错误的原因很多。主要的原因有哪些?
1) 交流不够、交流上有误解或者根本不进行交流
2) 软件复杂性
3) 程序设计错误
4) 需求变化
5) 时间压力
6) 代码文档贫乏
7) 软件开发工具
18.软件测试的步骤是什么?
1) 测试过程按4 个步骤进行,即单元测试(Unit Testing)、集成测试(Integrated Testing)、确认测试(Validation Testing)和系统测试(System Testing)及发版测试。
2) 开始是单元测试,集中对用源代码实现的每一个程序单元进行测试,检查各个程序模块是否正确地实现了规定的功能。
3) 集成测试把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。
4) 确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。
【软件测试面试题笔试部分】相关文章:
软件测试实习心得03-16
软件测试实习周记09-15
软件测试心得体会04-08
软件测试工作总结03-23
[优选]软件测试工作总结12-15
软件测试工作总结范文10-17
软件测试个人工作总结05-01
软件测试转正工作总结范文01-11
软件测试工程师总结范文10-14