软件项目经理笔试题及答案.docx
《软件项目经理笔试题及答案.docx》由会员分享,可在线阅读,更多相关《软件项目经理笔试题及答案.docx(14页珍藏版)》请在冰豆网上搜索。
软件项目经理笔试题及答案
软件项目经理笔试题及答案
一、判断题:
1、发现错误多的模块,残留在模块中的错误也多。
(√)(初级)
2、测试人员在测试过程中发现一处问题,如果问题影响不大,而自己又可以修改,应立即将此问题正确修改,以加快、提高开发的进程。
(×)(初级)
3、单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测试。
(√)(中级)
4、功能测试是系统测试的主要内容,检查系统的功能、性能是否与需求规格说明相同。
(√)(中级)
5、软件质量管理即QM由QA和QC构成,软件测试属于QC的核心工作内容。
(√)7、软件测试只能发现错误,但不能保证测试后的软件没有错误。
(√)
6、软件就是程序。
(X)
7、测试只要做到语句覆盖和分支覆盖,就可以发现程序中的所有错误。
(X)
8、I18N测试是指对产品做出具有国际性的规划,而L10N测试则是指对软件做出符合本地需求更改工作。
(√)【高级】
二、选择题(每题2分20)
1、进行软件质量管理的重要性有:
(ABCD)【中级】
A、维护降低成本B、法律上的要求C、市场竞争的需要
D、质量标准化的趋势E、软件工程的需要F、CMM过程的一部分
G、方便与客户进一步沟通为后期的实施打好基础
2、以测试的形态分测试可以分为:
(ABC)【中级】
1、进行软件质量管理的重要性有:
(ABCD)【中级】
A、维护降低成本B、法律上的要求C、市场竞争的需要
D、质量标准化的趋势E、软件工程的需要F、CMM过程的一部分
G、方便与客户进一步沟通为后期的实施打好基础
2、以测试的形态分测试可以分为:
(ABC)【中级】
1、进行软件质量管理的重要性有:
(ABCD)【中级】
A、维护降低成本B、法律上的要求C、市场竞争的需要
D、质量标准化的趋势E、软件工程的需要F、CMM过程的一部分
G、方便与客户进一步沟通为后期的实施打好基础
2、以测试的形态分测试可以分为:
(ABC)【中级】
1、进行软件质量管理的重要性有:
(ABCD)【中级】
A、维护降低成本B、法律上的要求C、市场竞争的需要
D、质量标准化的趋势E、软件工程的需要F、CMM过程的一部分
G、方便与客户进一步沟通为后期的实施打好基础
2、以测试的形态分测试可以分为:
(ABC)【中级】
1、进行软件质量管理的重要性有:
(ABCD)【中级】
A、维护降低成本B、法律上的要求C、市场竞争的需要
D、质量标准化的趋势E、软件工程的需要F、CMM过程的一部分
G、方便与客户进一步沟通为后期的实施打好基础
2、以测试的形态分测试可以分为:
(ABC)【中级】
A、建构性测试B、系统测试C、专项测试
D、单元测试E、组件测试F、集成测试
3、选出属于黑盒测试方法的选项(ABC)【初级】
A、测试用例覆盖B、输入覆盖C、输出覆盖
D、分支覆盖E、语句覆盖F、条件覆盖
4、编写测试计划的目的是:
(ABC)【中级】
A、使测试工作顺利进行B、使项目参与人员沟通更舒畅C、使测试工作更加系统化
D、软件工程以及软件过程的需要E、软件过程规范化的要求F、控制软件质量
5、依存关系有4种分别是:
(ABCD)【高级】
A、开始-结束B、开始-开始C、结束-开始
D、结束-结束E、开始-实施-结束F、结束-审核-开始
6、软件质量管理(QM)应有质量保证(QA)和质量控制(QC)组成,下面的选项属于QC得是:
(ABC)【高级】
A、测试B、跟踪C、监督D、制定计划E、需求审查F、程序代码审查
7、实施缺陷跟踪的目的是:
(ABCD)【中级】
A、软件质量无法控制B、问题无法量化C、重复问题接连产生D、解决问题的知识无法保留E、确保缺陷得到解决F、使问题形成完整的闭环处理
8、使用软件测试工具的目的:
(ABC)【中级】
A、帮助测试寻找问题B、协助问题的诊断C、节省测试时间
D、提高Bug的发现率E、更好的控制缺陷提高软件质F、更好的协助开发人员
9、典型的瀑布模型的四个阶段是:
(ABCD)【高级】
A、分析B、设计C、编码D、测试E、需求调研F、实施
10、PSP是指个人软件过程,是一种可用于(A)、(B)和(C)个人软件工作方式的自我改善过程。
【高级】
A、控制B、管理C、改进D、高效E、充分F、适宜
三、问答题
1、测试人员在软件开发过程中的任务是什么?
(初级)(5分)答:
1、寻找Bug;
2、避免软件开发过程中的缺陷;3、衡量软件的品质;4、关注用户的需求。
总的目标是:
确保软件的质量。
2、在您以往的工作中,一条软件缺陷(或者叫Bug)记录都包含了哪些内容?
如何提交高质量的软件缺陷(Bug)记录?
(初级)(6分)
答:
一条Bug记录最基本应包含:
编号、Bug所属模块、Bug描述、Bug级别、发现日期、发现人、修改日期、修改人、修改方法、回归结果等等;要有效的发现Bug需参考需求以及详细设计等前期文档设计出高效的测试用例,然后严格执行测试用例,对发现的问题要充分确认肯定,然后再向外发布如此才能提高提交Bug的质量。
3、界面测试题及设计题。
请找出下面界面中所存在的问题并分别列出;用黑盒测试的任何一种方法设计出此登陆窗体的测试用例。
(中级)(6分)
答:
1、窗体的标题栏中为空,没有给出标题。
2、用户名和密码控件的字体不一致并且没有对齐3、文本框的大小不一致没有对其。
4、确定和取消按钮控件的大小不一致。
4、黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点!
(中级)(5分)
答:
黑盒测试的优点有:
1)比较简单,不需要了解程序内部的代码及实现;
2)与软件的内部实现无关;
3)从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;
4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;
5)在做软件自动化测试时较为方便。
黑盒测试的缺点有:
1)不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;
2)自动化测试的复用性较低。
白盒测试的优点有:
帮助软件测试人员增大代码的覆盖率,提高代码的质量,发现代码中隐藏的问题。
白盒测试的缺点有:
1)程序运行会有很多不同的路径,不可能测试所有的运行路径;
2)测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可能会漏掉一些功能需求;
3)系统庞大时,测试开销会非常大。
5、根据自己的理解回答什么是软件测试,软件测试分为哪几个阶段。
(初级)(5分)
答:
软件测试是一个为了寻找软件中的错误而运行软件的过程,一个成功的测试是指找到了迄今为止尚未发现的错误的测试。
软件测试一般分为单元测试、集成测试和系统测试。
6、根据自己的理解什么是测试用例和测试规程,设计一个测试用例应当从哪几方面考虑?
(中级)(10分)
答:
狭义的讲,一个测试用例就是测试人员用以测试被测软件的某个特性或特性组合的一组数据。
这组数据可能是从用户处得来的实际的一组数据,也可能是测试人员专门设计出来的测试软件某些功能的一组数据。
测试规程就是详细的对测试用例设计方法、测试方法、测试工具、测试环境和测试数据进行描述的文档,还可以包括能把某个或某一组测试用例应用到被测软件上完成某项测试的一系列的操作步骤。
设计测试用例应当从以下几方面考虑:
边界值,等价类划分,有效/无效值等
1.软件测试的目的是尽可能多的找出软件的缺陷。
(Y)
2.Beta测试是验收测试的一种。
(Y)
Acceptancetesting
验收测试是部署软件之前的最后一个测试操作。
验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务。
3.验收测试是由最终用户来实施的。
(N)
是由测试人员来实施的
4.项目立项前测试人员不需要提交任何工件。
(Y)工件:
加工过程中生产对象
5.单元测试能发现约80%的软件缺陷。
(Y)
6.代码评审是检查源代码是否达到模块设计的要求。
(N)
代码评审也称代码复查,是指通过阅读代码来检查源代码与编码标准的符合性以及代码质量的活动。
7.自底向上集成需要测试员编写驱动程序。
(Y)
自顶向下综合测试的具体步骤为:
1以主控模块作为测试驱动模块,把对主控模块进行单元测试时引入的所有桩模块用实际模块替代;
2依据所选的集成策略(深度优先或广度优先),每次只替代一个桩模块;
3每集成一个模块立即测试一遍;
4只有每组测试完成后,才着手替换下一个桩模块;
5为避免引入新错误,须不断地进行回归测试(即全部或部分地重复已做过的测试)。
自底向上综合测试的步骤分为:
1把低层模块组织成实现某个子功能的模块群(cluster);
2开发一个测试驱动模块,控制测试数据的输入和测试结果的输出;
3对每个模块群进行测试;
4删除测试使用的驱动模块,用较高层模块把模块群组织成为完成更大功能的新模块群。
8.负载测试是验证要检验的系统的能力最高能达到什么程度。
(N)
负载测试(Loadtesting),通过测试系统在资源超负荷情况下的表现,以发现设计上的错误或验证系统的负载能力。
在这种测试中,将使测试对象承担不同的工作量,以评测和评估测试对象在不同工作量条件下的性能行为,以及持续正常运行的能力。
负载测试的目标是确定并确保系统在超出最大预期工作量的情况下仍能正常运行。
此外,负载测试还要评估性能特征。
例如,响应时间、事务处理速率和其他与时间相关的方面。
9.测试人员要坚持原则,缺陷未修复完坚决不予通过。
(N)
10.代码评审员一般由测试员担任。
(N)
11.我们可以人为的使得软件不存在配置问题。
(N)
是一种标识、组织和控制修改的`技术。
软件配置管理应用于整个软件工程过程。
我们知道,在软件建立时变更是不可避免的,而变更加剧了项目中软件开发者之间的混乱。
12.集成测试计划在需求分析阶段末提交。
(N)
执行阶段
1)时间安排单元测试已经完成后就可以开始执行集成测试了
2)输入需求规格说明书概要设计集成测试计划集成高度设计集成测试例集成测试规程集成测试代码(如果有)集成测试脚本集成测试工具详细设计代码单元测试报告
3)入口条件单元测试阶段已经通过基线化评审
4)活动步骤执行集成测试用例回归集成测试用例撰写集成测试报告
5)输出集成测试报告
6)出口条件集成测试报告通过集成测试阶段基线评审
选择题
1.软件验收测试的合格通过准则是:
(ABCD)
A.软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
B.所有测试项没有残余一级、二级和三级错误。
C.立项审批表、需求分析文档、设计文档和编码实现一致。
D.验收测试工件齐全。
2.软件测试计划评审会需要哪些人员参加?
(ABCD)
A.项目经理
B.SQA负责人
软件质量保证(SQA)是建立一套有计划
目标1:
软件质量保证工作是有计划进行的。
目标2:
客观地验证软件项目产品和工作是否遵循恰当的标准、步骤和需求。
目标3:
将软件质量保证工作及结果通知给相关组别和个人。
目标4:
高级管理层接触到在项目内部不能解决的不符合类问题。
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.通过画因果图来写测试用例的步骤为:
(1)根据程序规格说明书描述,分析并确定因(输入条件)和果(输出结果或程序状态的改变),画出因果图。
(2)将得到的因果图转换为判定表。
(3)为判定表中每一列所表示的情况设计一个测试用例。
四、简答
1.区别阶段评审的与同行评审
答:
同行评审目的:
发现小规模工作产品的错误,只要是找错误;
阶段评审目的:
评审模块阶段作品的正确性可行性及完整性
同行评审人数:
3-7人人员必须经过同行评审会议的培训,由SQA指导
阶段评审人数:
5人左右评审人必须是专家具有系统评审资格
同行评审内容:
内容小一般文档<40页,代码<500行
阶段评审内容:
内容多,主要看重点
同行评审时间:
一小部分工作产品完成
阶段评审时间:
通常是设置在关键路径的时间点上!
2.什么是软件测试
答:
测试是为发现错误而执行程序的过程
软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。
执行测试用例后,需要跟踪故障,以确保开发的产品适合需求。
3简述集成测试的过程
答:
系统集成测试主要包括以下过程:
1.构建的确认过程。
2.补丁的确认过程。
3.系统集成测试测试组提交过程。
4.测试用例设计过程。
5.测试代码编写过程。
6.Bug的报告过程。
7.每周/每两周的构建过程。
8.点对点的测试过程。
9.组内培训过程。
5白盒测试有几种方法
答:
总体上分为静态方法和动态方法两大类。
静态:
关键功能是检查软件的表示和描述是否一致,没有冲突或者没有歧义。
动态:
语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖。
6系统测试计划是否需要同行审批,为什么
答:
需要,系统测试计划属于项目阶段性关键文档,因此需要评审。
7Alpha测试与beta的区别
Alpha测试(α测试)是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试,Alpha测试不能由程序员或测试员完成。
Alpha测试发现的错误,可以在测试现场立刻反馈给开发人员,由开发人员及时分析和处理。
目的是评价软件产品的功能、可使用性、可靠性、性能和支持。
尤其注重产品的界面和特色。
Alpha测试可以从软件产品编码结束之后开始,或在模块(子系统)测试完成后开始,也可以在确认测试过程中产品达到一定的稳定和可靠程度之后再开始。
有关的手册(草稿)等应该在Alpha测试前准备好。
Beta测试(β测试)是软件的多个用户在一个或多个用户的实际使用环境下进行的测试。
开发者通常不在测试现场,Beta测试不能由程序员或测试员完成。
因而,Beta测试是在开发者无法控制的环境下进行的软件现场应用。
在Beta测试中,由用户记下遇到的所有问题,包括真实的以及主管认定的,定期向开发者报告,开发者在综合用户的报告后,做出修改,最后将软件产品交付给全体用户使用。
Beta测试着重于产品的支持性,包括文档、客户培训和支持产品的生产能力。
只有当Alpha测试达到一定的可靠程度后,才能开始Beta测试。
由于Beta测试的主要目标是测试可支持性,所以Beta测试应该尽可能由主持产品发行的人员来管理。
答:
Alpha测试在系统开发接近完成时对应用系统的测试;测试后仍然会有少量的设计变更。
这种测试一般由最终用户或其它人员完成,不能由程序或测试员完成。
Beta测试当开发和测试根本完成时所做的测试,最终的错误和问题需要在最终发行前找到。
这种测试一般由最终用户或其它人员完成,不能由程序员或测试员完成。
8比较负载测试,容量测试和强度测试的区别
答:
负载测试:
在一定的工作负荷下,系统的负荷及响应时间。
强度测试:
在一定的负荷条件下,在较长时间跨度内的系统连续运行给系统性能所造成的影响。
容量测试:
容量测试目的是通过测试预先分析出反映软件系统应用特征的某项指标的极限值(如最大并发用户数、数据库记录数等),系统在其极限值状态下没有出现任何软件故障或还能保持主要功能正常运行。
容量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量。
容量测试的目的是使系统承受超额的数据容量来发现它是否能够正确处理。
容量测试是面向数据的,并且它的目的是显示系统可以处理目标内确定的数据容量。
9测试结束的标准是什么?
答:
用例全部测试。
覆盖率达到标准。
缺陷率达到标准。
其他指标达到质量标准。
10描述软件测试活动的生命周期?
测试周期分为计划、设计、实现、执行、总结。
其中:
计划:
对整个测试周期中所有活动进行规划,估计工作量、风险,安排人力物力资源,安排进度等;
设计:
完成测试方案,从技术层面上对测试进行规划;实现:
进行测试用例和测试规程设计;执行:
根据前期完成的计划、方案、用例、规程等文档,执行测试用例。
总结:
记录测试结果,进行测试分析,完成测试报告。
11软件的缺陷等级应如何划分?
A类—严重错误,包括以下各种错误:
1.由于程序所引起的死机,非法退出
2.死循环3.数据库发生死锁4.因错误操作导致的程序中断
5.功能错误6.与数据库连接错误7.数据通讯错误
B类—较严重错误,包括以下各种错误:
1.程序错误2.程序接口错误
3.数据库的表、业务规则、缺省值未加完整性等约束条件
C类—一般性错误,包括以下各种错误:
1.操作界面错误(包括数据窗口内列名定义、含义是否一致)
2.打印内容、格式错误3.简单的输入限制未放在前台进行控制
4.删除操作未给出提示5.数据库表中有过多的空字段
D类—较小错误,包括以下各种错误:
1.界面不规范2.辅助说明描述不清楚
3.输入输出不规范4.长操作未给用户提示5.提示窗口文字未采用行业术语6.可输入区域和只读区域没有明显的区分标志
E类—测试建议
4怎么做好文档测试
仔细阅读,跟随每个步骤,检查每个图形,尝试每个示例。
检查文档的编写是否满足文档编写的目的
内容是否齐全,正确
内容是否完善
标记是否正确