软件测试工程师笔试题及答案

合集下载

软件测试工程师笔试题及答案

软件测试工程师笔试题及答案

软件测试工程师笔试题及答案【篇一:软件测试工程师面试试题和题目的答案】测试人员,测试过程也不规范,对于没有做过测试的人来讲还是有些难度的。

01.为什么要在一个团队中开展软件测试工作?保证软件质量的最后一道关口。

02.您是否了解以往所工作的企业的软件测试过程?如果了解,请试述在这个过程中都有哪些工作要做?分别由哪些不同的角色来完成这些工作?03. 您所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型的区别与联系(如功能测试、性能测试……)易用性测试-界面的友好性,操作方便性等。

功能测试-系统中功能性需求的满足安全性测试-系统是否存在安全隐患和漏洞性能测试-系统在大并发下的响应速度和健壮性04.请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。

黑盒/白盒:主要区别在是否了解系统或程序的内部结构和代码单元测试:关注某一个单元,函数,模块的正确性,一般需要编写相关测试代码。

集成测试:模块或模块直接的集成接口测试,单个模块测试系统测试:一个完整功能的完全测试。

05.测试计划工作的目的是什么?测试计划工作的内容都包括什么?其中哪些是最重要的?提前安排出测试工具选择,测试类型选择,人员需求,保证和项目开发协调一致,保证测试工作顺利进行。

06.您认为做好测试计划工作的关键是什么?了解项目或系统的业务需求和项目经理协调好,了解项目的进度计划安排情况07.您所熟悉的测试用例设计方法都有哪些?请分别以具体的例子来说明这些方法在测试用例设计工作中的应用。

边界值/等价类/业务流程图分析和状态转换分析/业务逻辑分析08.您认为做好测试用例设计工作的关键是什么?对业务和软件需求非常清楚,可以根据需求不同选择不同的测试用例设计09.您以往的工作中是否曾开展过测试用例的评审工作?如果有,请描述测试用例评审的过程和评审的内容。

评审计划-预审-评审;评审内容主要是测试用例对软件需求的覆盖程度,对于相关边界是否考虑,是否针对复杂流程准备多套测试数据,是否有专门针对非功能性需求的测试。

东软软件测试工程师20套笔试题及参考答案

东软软件测试工程师20套笔试题及参考答案

东软软件测试工程师20套笔试题及参考答案问题:东软软件测试工程师20套笔试题及参考答案-测试基础(1)回答:试述软件的概念和特点?软件复用的含义?构件包括哪些?瀑布模型和螺旋模型的主要区别是什么?软件生存周期及其模型是什么?什么是软件测试?软件测试的目的与原则净室软件工程的策略是什么?软件配置管理的作用?软件配置包括什么?什么是软件质量?软件包是什么?目前主要的测试用例设计方法是什么?软件的安全性应从哪几个方面去测试?参考答案:答案如下:软件是计算机系统中与硬件相互依存的另一部分,它是包括程序、文档的完整集合。

软件复用(Software Reuse)是将已有软件的各种有关知识用于建立新的软件,以缩减软件开发和维护的花费。

软件复用是提高软件生产力和质量的一种重要技术。

早期的软件复用主要是代码级复用,被复用的知识专指程序,后来扩大到包括领域知识、开发经验、设计决定、体系结构、需求、设计、代码和文档等一切有关方面。

可以被复用的软件成分一般称作可复用构件答案如下:参照TP书上第六章45/46页的讲解,参考一下书上的说法进行对比即可。

考虑弹性、风险、成本,等几个方面。

答案如下:软件生存周期是软件开发全部过程、活动和任务的结构框架,是从可行性研究到需求分析、软件设计、编码、测试、软件发布维护的过程。

在经历需求、分析、设计、实现、部署后,软件将被使用并进入维护阶段,直到最后由于缺少维护费用而逐渐消亡。

这样的一个过程,称为生命周期模型(Life Cycle Model)。

答案如下:使用人工或自动手段,来运行或测试某个系统的过程。

其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。

软件测试的目的:测试是程序的执行过程,目的在于发现错误一个成功的测试用例在于发现至今未发现的错误一个成功的测试是发现了至今未发现的错误的测试确保产品完成了它所承诺或公布的功能,并且用户可以访问到的功能都有明确的书面说明。

软件测试工程师笔试题(含答案)

软件测试工程师笔试题(含答案)
9.一个缺陷测试报告的组成 缺陷的标题�缺陷的基本信息�复现缺陷的操作步骤�缺陷的实际结果描述�期望的正确结 果描述�注释文字和截取的缺陷图象。 缺陷的标题� 缺陷的基本信息� 测试的软件和硬件环境� 测试的软件版本� 缺陷的类型� 缺陷的严重程度� 缺陷的处理优先级。 复现缺陷的操作步骤� 缺陷的实际结果描述� 期望的正确结果描述� 注释文字和截取的缺陷图像。
有弹簧的圆珠笔� 功能测试� 圆珠笔按下是否能正常写字�写字太重会不回缩回去�继续 按会不会弹回去 性能测试�圆珠心弹出弹回的快慢 负载测试�一直按�弹簧能接受多少次的升缩 兼容性测试�换其他的笔芯能不能行 强度测试�用力过度会怎样 可恢复性测试�如果弹簧压久了�是否可恢复等等 GUI 测试�笔的外观�拿笔的舒适性 安全性�考虑对笔芯的保护�是否对使用者造成危害等等
5.设计用例的方法、依据有那些� 白盒测试用例设计有如下方法:基本路径测试\等价类划分\边界值分析\覆盖测试\循环测试\ 数据流测试\程序插桩测试\变异测试.这时候依据就是详细设计说明书及其代码结构吧,恩,这 个真不确定
黑盒测试用例设计方法:基于用户需求的测试\功能图分析方法\等价类划分方法\边界值分析 方法\错误推测方法\ 因果图方法\判定表驱动分析方法\正交实验设计方法.依据是用户需求 规格说明书,详细设计说明书
查看杯子外观功能度用水杯装水看漏不漏水能不能被喝到安全性杯子有没有毒或细菌可靠性杯子从不同高度落下的损坏程度可移植性杯子再不同的地方温度等环境下是否都可以正常使用软件开发网兼容性杯子是否能够容纳果汁白水酒精汽油等易用性杯子是否烫手是否有防滑措施是否方便饮用用户文档使用手册是否对杯子的用法限制使用条件等有详细描述疲劳测试将杯子盛上水案例一放24小时检查泄漏时间和情况盛上汽油案例二放24小时检查泄漏时间和情况等压力测试用根针并在针上面不断加重量看压强多大时会穿透强度测试

软件测试笔试题及答案

软件测试笔试题及答案

软件测试笔试题及答案一、选择题1. 下列哪项不属于软件测试的目标?a) 发现软件中的缺陷b) 验证软件是否满足需求c) 确保软件具有高性能d) 提高软件的可靠性答案:c) 确保软件具有高性能2. 在测试活动中,以下哪个过程通常位于最后?a) 单元测试b) 验收测试c) 回归测试d) 静态测试答案:b) 验收测试3. 在软件测试中,猴子测试是指什么?a) 随机输入测试b) 随机点击测试c) 随机操作测试d) 随机接口测试答案:a) 随机输入测试4. 以下哪个是黑盒测试技术?a) 语句覆盖测试b) 边界值分析测试c) 静态代码分析d) 回归测试答案:b) 边界值分析测试5. 在软件测试中,白盒测试是指什么?a) 只测试软件的外部功能b) 只测试软件的内部逻辑c) 组合黑盒和白盒测试的方法d) 只测试软件的用户界面答案:b) 只测试软件的内部逻辑二、填空题1. 简述软件测试的目标。

答案:软件测试的目标是发现软件中的缺陷、验证软件是否满足需求、提高软件的可靠性。

2. 请简要说明单元测试的作用。

答案:单元测试主要是测试软件中的最小单元模块,以确认每个模块都能正常运行且满足预期。

它有助于提早发现和修复代码错误,避免错误在整个系统中扩散。

3. 请解释回归测试的含义。

答案:回归测试是指在软件发生变化后,重新执行旧的测试用例,以确保修改不会影响原有的功能和系统稳定性。

它有助于保证系统在修改后仍能正常工作,不引入新的问题。

三、解答题1. 请简要介绍一下常用的软件测试方法。

答案:常用的软件测试方法包括黑盒测试和白盒测试。

黑盒测试主要关注软件的外部功能,不考虑内部逻辑,通过输入合法和非法数据来测试软件的响应和输出是否符合预期。

而白盒测试则关注软件的内部逻辑,通过检查代码覆盖率和执行路径来验证软件的正确性。

2. 简要描述一下软件测试生命周期中的各个阶段。

答案:软件测试生命周期包括需求分析、测试计划、测试设计、测试执行和测试评估。

软件测试笔试题及答案

软件测试笔试题及答案

一、选择题1.软件可靠性是指在指定的条件下使用时,软件产品维持规定的性能级别的能力,其子特性(C)是指在软件发生故障或者违反指定接口的情况下,软件产品维持规定的性能级别的能力。

A.成熟性; B.易恢复性;C.容错性; D.可靠性依从性2.关于软件质量的描述,正确的是__B____A.软件质量是指软件满足规定用户需求的能力;B.软件质量特性是指软件的功能性、可靠性、易用性、效率、可维护性、可移植性;C.软件质量保证过程就是软件测试过程;D.以上描述都不对3.____B__方法根据输出对输入的依赖关系设计测试用例。

A.路径测试B.等价类 C.因果图D.边界值4.下列关于软件验收测试的合格通过准则错误的是:___C___A.软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求;B.所有测试项没有残余一级、二级和三级错误;C.立项审批表、需求分析文档、设计文档和编码实现不一致;D.验收测试工件齐全5.测试设计员的职责有:___B___①制定测试计划②设计测试用例③设计测试过程、脚本④评估测试活动A.①④B.②③ C.①③D.以上全是6.对于业务流清晰的系统可以利用D场景法贯穿整个测试用例设计过程广在用例中综合使用各种测试方法,对于参数配置类的软件,要用C正交试验法选择较少的组合方式达到最佳效果,如果程序的功能说明中含有输入条件的组合情况,则一开始就可以选用B因果图法和判定表驱动法A.等价类划分B.因果图法C.正交试验法D.场景法、7.下列软件实施活动的进入准则描述错误的是:__D____A.需求工件已经被基线化B.详细设计工件已经被基线化C.构架工件已经被基线化D.项目阶段成果已经被基线化8.正式的技术评审FTR(Formal Technical Review)是软件工程师组织的软件质量保证活动,下面关于FTR指导原则中错误的是__C____A.评审产品,而不是评审生产者的能力B.要有严格的评审计划,并遵守日程安排C.对评审中出现的问题要充分讨论,以求彻底解决D.限制参与者人数,并要求评审会之前做好准备9.下列关于文档测试描述错误的是__A____A.文档测试主要检查文档的正确性、完备性、可理解性、可操作性和易维护性;B.正确性是指不要把软件的功能和操作写错,也不允许文档内容前后矛盾;C.完备性是指文档不可以“虎头蛇尾”,更不许漏掉关键内容。

软件测试工程师笔试题目和答案

软件测试工程师笔试题目和答案

一、判断题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)二、选择题1.软件验收测试的合格通过准则是:(ABCD)A.软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。

B.所有测试项没有残余一级、二级和三级错误。

C.立项审批表、需求分析文档、设计文档和编码实现一致。

D.验收测试工件齐全。

2.软件测试计划评审会需要哪些人员参加?(ABCD)A.项目经理B.SQA负责人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.设计系统测试计划需要参考的项目文挡有:软件测试计划,软件需求工件和迭代计划。

软件测试笔试题及答案

软件测试笔试题及答案

软件测试笔试题及答案一、选择题1. 软件测试的目的是()。

A. 证明软件的正确性B. 发现并修复软件的缺陷C. 增加软件的功能D. 减少软件的性能开销答案:B2. 下列哪个测试方法是黑盒测试?()。

A. 语句覆盖B. 条件覆盖C. 路径覆盖D. 边界值分析答案:D3. 在软件测试中,回归测试的目的是()。

A. 测试软件的新功能B. 确保修改引起的问题C. 验证软件修改后的版本D. 测试软件的性能答案:C4. 单元测试通常由谁来完成?()。

A. 项目经理B. 开发人员C. 测试人员D. 用户答案:B5. 测试用例是()。

A. 用于执行测试的代码B. 一组测试输入、执行条件以及预期结果C. 软件测试工具D. 软件缺陷报告答案:B二、判断题1. 集成测试是在单元测试之后进行的。

(正确)2. 测试计划是测试过程中最不重要的文档。

(错误)3. 所有的软件缺陷都必须立即修复。

(错误)4. 测试覆盖率是一个衡量测试完整性的指标。

(正确)5. 静态测试不涉及实际运行代码。

(正确)三、简答题1. 请简述黑盒测试和白盒测试的区别。

答:黑盒测试是一种测试方法,它主要关注软件的功能需求,而不关心内部结构或代码。

测试人员像用户一样使用软件,检查功能是否按预期工作。

白盒测试则关注软件内部逻辑和代码结构,测试人员需要了解程序的内部工作原理,通过设计测试用例来检查代码的正确性和完整性。

2. 描述软件测试的生命周期。

答:软件测试生命周期(STLC)包括了从测试计划的制定到测试活动的结束的整个过程。

它通常包括以下阶段:测试计划、测试准备、测试执行、测试跟踪和控制、测试报告以及测试维护。

在这个周期中,测试团队会计划测试活动、设计和执行测试用例、记录和报告测试结果,并对发现的缺陷进行跟踪,直到它们被修复。

3. 什么是缺陷生命周期?请描述它的主要阶段。

答:缺陷生命周期是指软件缺陷从被发现到被修复并重新验证的整个过程。

它的主要阶段包括:新建、确认、分配、修复、重新验证和关闭。

软件测试笔试题与答案

软件测试笔试题与答案

1、TCP是互联网中的(1 A)协议,使用(2 C)次握手协议建立连接。

当主动发出SYN连接请求后,等待对方回答(3 A)。

这种连接的方法可以防止(4 D),TCP使用的流量控制协议是(5 B)。

(1)A.传输层 B.网络层C会话层 D.应用层(2)A.1 B.2 C.3 D.4(3)A.SYN,ACK B.FIN,ACK C.PSH,ACK D.RST,ACK(4)A.出现半连接 B.无法连接 C.假冒的连接 D.产生错误的连接(5)A.固定大小的滑动窗口协议 B.可变大小的滑动窗口协议 C.后退N帧ARQ协议 D.选择重发ARQ协议2、下列叙述中,与提高软件可移植性相关的是D 。

A.选择时间效率高的算法B.尽可能减少注释C.选择空间效率高的算法D.尽量用高级语言编写系统中对效率要求不高的部分D软件可移植性是指与软件可从某一环境移植到另一环境的能力有关的一组属性。

高级语言具有较好的可移植性,所以可以尽量用高级语言编写系统中对效率要求不高的部分。

减少注释、选择时间/空间效率高的算法都不能提高软件的可移植性。

3、用边界值分析法,假定1<X<100,那么X在测试中应该取的边界值是__B____A.X=1,X=100;B.X=0,X=1,X=100,X=101;C.X=2,X=99;D.X=O,X=101;4、在网络应用测试中,网络延迟是一个重要指标。

以下关于网络延迟的理解,正确的是__D____ A.指响应时间;B.指报文从客户端发出到客户端接收到服务器响应的间隔时间;C.指报文在网络上的传输时间;D.指从报文开始进入网络到它开始离开网络之间的时间网络延迟:在传输介质中传输所用的时间,即从报文开始进入网络到它开始离开网络之间的时间。

5、软件可靠性是指在指定的条件下使用时,软件产品维持规定的性能级别的能力,其子特性(C)是指在软件发生故障或者违反指定接口的情况下,软件产品维持规定的性能级别的能力。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

测试工程师笔试题一、计算机知识(30分)1、在Linux系统中,一个文件的访问权限是755,其含义是什么?参考答案:755表示该文件所有者对该文件具有读、写、执行权限,该文件所有者所在组用户及其他用户对该文件具有读和执行权限。

2、Linux中,如何从root用户切换到普通用户?参考答案:susu user1 切换到user1,但切换后的当前目录还是root访问的目录su – user1 切换到user1,并且当前目录切换到user1的根目录下(/home/user1/)3、简述一下C/S模式和B/S模式的区别?参考答案:c/s 是客户端/服务器架构b/s 是浏览器/服务器架构C/S模式有以下特点:1.C/S模式将应用与服务分离,系统具有稳定性和灵活性2.C/S模式配备的是点对点的结构模式,适用于局域网,有可靠的安全性3.由于客户端实现与服务器端的直接连接,没有中间环节,因此响应速度快4.在C/S模式中,作为客户机的计算机都要安装客户机程序,一旦软件系统升级,每台客户机都要安装客户机程序,系统升级和维护较为复杂B/S模式有以下特点:1.系统开发、维护、升级方便每当服务器应用程序升级时,只要在服务器上升级服务应用程序即可,用户计算机上的浏览器软件不需要修改,系统开发和升级维护方便2.B/S模式具有很强的开放性在B/S模式下,用户通过通用的浏览器进行访问,系统开放性好3.B/S模式的结构易于扩展由于Web的平台无关性,B/S模式的结构可以任意扩展,可以从包含一台服务器和几个用户的小型系统扩展成为拥有成千上万个用户的大型系统4.用户使用方便B/S模式的应用软件都是基于Web浏览器的,而Web浏览器的界面是类似的。

对于无用户交换功能的页面。

用户接触的界面都是一致的,用户使用方便4、Windows操作系统中PATH环境变量的作用是什么?参考答案:PATH是Windows操作系统环境变量,PATH作用是用户在命令行窗口执行一个命令,则在PATH变量设置的目录下依次寻找该命令或对应的执行文件,若找到,则执行,若没有找到,则命令行窗口返回无效命令。

5、TCP和UDP有什么区别?参考答案:TCP-有连接,所以握手过程会消耗资源,过程为可靠连接,不会丢失数据,适合大数据量交换UDP-非可靠连接,会丢包,没有校验,速度快,无须握手过程6、DNS是什么?它是如何工作的?参考答案:域名解析服务。

用于将域名解析为IP,或反和将IP解析为域名。

客户机可指定DNS服务器来解析,或用本机hosts文件进行解析。

7、说出4种及以上常用的操作系统及其主要的应用范围(微软的操作系统除外)。

参考答案:Linux(Red Hat、SUSE、Debian、Trubo Linux):主要用于搭建各类服务器MAC OS:苹果机的操作系统,用于图像处理Unix(AIX:IBM服务器的专用操作系统;Solaris:Sun操作系统;FreeBSD、NetBSD)8面向对象程序设计有哪些特点?参考答案:面向对象程序设计以需求当中的数据作为中心,来进行设计,具有良好的代码重用性。

封装性:也叫数据隐藏,用户无需知道内部工作流程,只要知道接口和操作就可以的,C++中一般用类来实现封装。

继承性:一种支持重用的思想,在现有的类型派生出新的子类,例如新型电视机在原有型号的电视机上增加若干中功能而得到,新型电视机是原有电视机的派生,继承了原有电视机的属性,并增加了新的功能。

多态性:指在一般类中定义的属性或行为,被特殊类继承之后,可以具有不同的数据类型或表现出不同的行为。

动态联编:指一个计算机程序自身彼此关联的过程,按照联编所进行的阶段不同,可分为两种不同的联编方法:静态联编和动态联编。

9、一条软件缺陷记录都包含哪些内容?参考答案:bug编号bug发现人bug发现时间bug状态bug严重程度bug所属版本bug所属模块bug处理人bug修改日期bug简单描述bug详细描述bug相关附件bug初步分析10、一套完整的测试应该由哪些阶段组成?参考答案:测试计划、测试设计与开发、测试实施、测试评审与测试结论二、测试知识(50分)1、您以往所从事的软件测试工作中,是否使用了一些工具来进行软件缺陷(Bug)的管理?如果有,请结合该工具描述软件缺陷(Bug)跟踪管理的流程。

(10分)参考答案:1.拿到新版本2.进行测试发现BUG后提交SUBMIT(测试)3.由相应人员置为NEW的状态4.修改BUG,FIXED(开发)(当然也有可能被判定为不是BUG或者需要讨论决定的)5.回归测试,修改BUG状态,FIXED VERIFIED或者REOPEN(测试)6.REOPEN的话开发继续修改,FIXED VERIFIED的话由相应人员CLOSE这个BUG。

2、请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。

(10分)参考答案:黑盒测试:把测试对象当成一个黑盒子,测试人员完全不考虑逻辑结构和内部特性,只依据程式的需求说明书来检查程式的功能是否满足它的功能说明。

白盒测试:把测试对象当成一个透明的盒子,允许测试人员利用程序内部逻辑结构及相关信息,设计或选择测试用例,对程式所有逻辑路径进行测试。

单元测试:白盒测试的一种,对软件设计中的单元模块进行测试。

集成测试:在单元测试的基础上,对单元模块之间的连接和组装w进行测试。

系统测试:在所有都考虑的情况下,对系统进行测试。

验收测试:第三方进行的确认软件满足需求的测试3、你所熟悉的测试用例设计方法有哪些?分别以具体的例子说明在实际测试中的应用。

(10分)参考答案:1.等价类划分划分等价类: 等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情况:有效等价类和无效等价类.2.边界值分析法边界值分析方法是对等价类划分方法的补充。

测试工作经验告诉我,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误.使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出等价类的边界,就是应着重测试的边界情况.应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据.3.错误推测法基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法.错误推测方法的基本思想: 列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例. 例如, 在单元测试时曾列出的许多在模块中常见的错误. 以前产品测试中曾经发现的错误等, 这些就是经验的总结. 还有, 输入数据和输出数据为0的情况. 输入表格为空格或输入表格只有一行. 这些都是容易发生错误的情况. 可选择这些情况下的例子作为测试用例.4.因果图方法前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系, 相互组合等. 考虑输入条件之间的相互组合,可能会产生一些新的情况. 但要检查输入条件的组合不是一件容易的事情, 即使把所有输入条件划分成等价类,他们之间的组合情况也相当多. 因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例. 这就需要利用因果图(逻辑模型). 因果图方法最终生成的就是判定表. 它适合于检查程序输入条件的各种组合情况.4、画出软件测试的V模型图。

(5分)参考答案:5、软件的安全性应从哪几个方面去测试?(5分)参考答案:(1)用户认证机制:如数据证书、智能卡、双重认证、安全电子交易协议(2)加密机制(3)安全防护策略:如安全日志、入侵检测、隔离防护、漏洞扫描(4)数据备份与恢复手段:存储设备、存储优化、存储保护、存储管理(5)防病毒系统6、描述软件产生内存泄露的原因以及检查方式。

(可以结合一种开发语言进行描述)(5分)参考答案:内存泄露的原因,主要是由于开发过程当中申请了计算机资源(例如对象、内存等),但是使用资源完成以后没有及时释放资源导致的。

例如在C语言当中使用了malloc申请了内存,但是未使用free来释放内存。

7、简述软件自动化测试工具的原理。

(5分)参考答案:测试工具的优势在于可部分地替代人工的测试过程,通过测试工具来模拟人的手工操作,这个过程中会记录操作的对象和操作的顺序,然后在回放时按照录制的顺序操作这些对象。

能重复不断地执行,能精确判断数值和字符对象。

自动化测试工具把测试用例用自动的方式执行,例如,自动地产生数据,自动地打开应用程序,自动地查找控件,自动地输入数据,自动地操作控件,自动地收集测试结果,自动地与预期结果进行比较等。

三、数据库(10分)为管理业务培训信息,建立3个表:S(S#,SN,SD,SA) S#,SN,SD,SA分别代表学号,学员姓名,所属单位,学员年龄C(C#,CN) C#,CN分别代表课程编号,课程名称SC(S#,C#,G) S#,C#,G分别代表学号,所选的课程编号,学习成绩(1)使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名?答:select s# ,sn from s where S# in(select S# from c,sc where c.c#=sc.c# and cn=’税收基础’) (2) 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位?答:select sn,sd from s,sc where s.s#=sc.s# and sc.c#=’c2’(3) 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位?答:select sn,sd from s where s# not in(select s# from sc where c#=’c5’)(4) 查询选修了课程的学员人数答:select 学员人数=count(distinct s#) from sc(5) 查询选修课程超过5门的学员学号和所属单位?答:select sn,sd from s where s# in(select s# from sc group by s# having count(distinct c#)>5)四、编程题(10分)编程输出1/1+1/3+1/5+……+1/99的和。

参考答案:public class Sum {public static void main(String[] args) {float sum = 0.0f;for(float i=1.0f;i<=99.0f;i=i+2){sum = 1/i + sum;}System.out.println(sum);}}附加题谈谈软件测试技术,以及一个优秀的软件测试人员应该具备的素质。

相关文档
最新文档