《2022年常见的软件测试面试题 .pdf》由会员分享,可在线阅读,更多相关《2022年常见的软件测试面试题 .pdf(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1、常见的 测试用例设计 方法都有哪些?请分别以具体的例子来说明这些方法在测试用例设计 工作中的应用。1)等价类划分常见的 软件测试面试 题划分等价类 : 等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定 :测试某等价类的代表值就等于对这一类其它值的测试 .因此,可以把全部输入数据合理划分为若干等价类, 在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果 .等价类划分可有两种不同的情况:有效等价类和无效等价类 . 2)边界值分析法边界值分析方法是对等价类划分方法的补充。测试工作经验告诉我, 大量的错
2、误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误. 使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出等价类的边界,就是应着重测试的边界情况.应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据, 而不是选取等价类中的典型值或任意值作为测试数据. 3)错误推测法基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法 . 错误推测方法的基本思想 : 列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例. 例如, 在单元测试 时曾列出的许多在模块中常见的错误 .
3、 以前产品测试中曾经发现的错误等,这些就是经验的总结。还有, 输入数据和输出数据为0 的情况。输入表格为空格或输入表格只有一行. 这些都是容易发生错误的情况。可选择这些情况下的例子作为测试用例. 4)因果图方法前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件, 但未考虑输入条件之间的联系,相互组合等 . 考虑输入条件之间的相互组合,可能会产生一些新的情况 . 但要检查输入条件的组合不是一件容易的事情,即使把所有输入条件划分成等价类, 他们之间的组合情况也相当多. 因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例 . 这就需要利用因果图(逻
4、辑模型). 因果图方法最终生成的就是判定表. 它适合于检查程序输入条件的各种组合情况. 5)正交表分析法名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 8 页 - - - - - - - - - 有时候,可能因为大量的参数的组合而引起测试用例数量上的激增,同时,这些测试用例并没有明显的优先级上的差距,而测试人员又无法完成这么多数量的测试,就可以通过正交表来进行缩减一些用例,从而达到尽量少的用例覆盖尽量大的范围的可能性。6)场景分析方法指根据用户场景来模拟用户的操作步骤,这
5、个比较类似因果图, 但是可能执行的深度和可行性更好。2、您认为做好测试用例设计工作的关键是什么?白盒测试 用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。不可能做到完全测试,以最少的用例在合理的时间内发现最多的问题3、详细的描述一个测试活动完整的过程。1)项目经理通过和客户的交流,完成需求文档,由开发人员和测试人员共同完成需求文档的评审, 评审的内容包括: 需求描述不清楚的地方和可能有明显冲突或者无法实现的功能的地方。项目经理通过综合开发人员, 测试人员以及客户的意见,完成项目计划。然后sqa 进入项目,开始进行统计和跟
6、踪2)开发人员根据需求文档完成需求分析文档,测试人员进行评审,评审的主要内容包括是否有遗漏或者双方理解不同的地方。测试人员完成测试计划文档,测试计划包括的内容上面有描述。3)测试人员根据修改好的需求分析文档开始写测试用例,同时开发人员完成概要设计文档, 详细设计文档。 此两份文档成为测试人员撰写测试用例的补充材料。4)测试用例完成后,测试和开发需要进行评审。5)测试人员搭建环境6)开发人员提交第一个版本,可能存在未完成功能,需要说明。测试人员进行测试,发现 bug 后提交给 bugzilla 。7)开发提交第二个版本,包括bug fix 以及增加了部分功能,测试人员进行测试。8)重复上面的工作
7、, 一般是 3-4 个版本后 bug 数量减少,达到出货的要求。9)如果有客户反馈的问题,需要测试人员协助重现以及回归测试。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 8 页 - - - - - - - - - 4、以往是否曾经从事过性能测试工作?请尽可能的详细描述您以往的性能测试工作的完整过程。曾经做过一套网管系统的性能测试, 主要测试该软件在同时管理大量终端的情况下,在响应时间, cpu/磁盘/内存等参数是否满足要求。也曾经做过软交换系统的呼叫性能测试,主要是测试
8、软交换系统在有大量呼叫的情况下,响应时间,呼叫成功率,cpu/磁盘/内存等参数是否满足设计要求。5、您在从事性能测试工作时,是否使用过一些测试工具?如果有,请试述该工具的工作原理,并以一个具体的工作中的例子描述该工具是如何在实际工作中应用的。测试网管系统中,使用的mimic 来模拟终端,能够大量的节省成本。测试软交换系统的时候,使用的prolab 来模拟终端并发送呼叫软交换,他完成了同时数百人才能完成的摘机拨号工作,主要工作原理是产生一些符合要求的 ip 包并发送给软交换系统,同时对软交换系统的回应进行处理,决定下一步动作。6、您认为性能测试工作的目的是什么?做好性能测试工作的关键是什么?主要
9、是保障在大量用户的情况下,服务能正常使用。7、在您以往的工作中,一条软件缺陷(或者叫bug )记录都包含了哪些内容?如何提交高质量的软件缺陷(bug )记录?1)在传统的 bugzilla 中,bug 描述应该包括以下的信息 和 bug 产生对应的软件版本 开发的接口人员 bug 的优先级 bug 的严重程度 bug 可能属于的模块,如果不能确认,可以用开发人员来判断 bug 标题,需要清晰的描述现象 bug 描述,需要尽量给出重新bug 的步骤 bug 附件中能给出相关的日志和截图。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - -
10、- 名师精心整理 - - - - - - - 第 3 页,共 8 页 - - - - - - - - - 高质量的 bug 记录就是指很容易理解的bug 记录,所以,对于描述的要求高,能提供的信息多且准确,很好的帮助开发人员定位。这些题目有我自己 面试过程中问道过的, 也有在网上看到的, 但是答案我都是结合自己的从业经验以及真是的项目实践流程来编写的,不能说这就是最终的正确答案,但是希望整理出来能给大家一些参考和帮助!如果大家有更好的答案不妨写到评论当中,我们共同讨论 1、介绍一下整体项目流程答案:1. 搭建缺陷管理 的环境和 测试环境以及 配置管理 的环境搭建; 2. 编写测试计划;3. 设
11、计测试用例; 4. 编写测试用例; 5. 测试用例的评审; 6. 执行测试;7. 缺陷管理;8. 测试报告的输出2、在实际项目中你是如何做测试计划答案:1.对客户提供的或需求分析人员编写的用户需求文档或需求规格说明书进行分析,提炼出测试要点;2.根据测试要点编写测试用例。3.由评审组对测试用例进行评审-修改-再次评审 -初步定稿4.执行测试4.1 按照测试用例对系统进行功能验证及客户的需求验证4.2 将测试过程中产生的Bug 录入缺陷管理系统名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - -
12、 第 4 页,共 8 页 - - - - - - - - - 4.3 新版本发布后,对本次版本新增加的功能以及开发人员修正的Bug 进行回归测试4.4 根据项目需要提交测试报告。3、你是如何制定测试过程中的时间进度表的答案:根据项目的需求、开发周期、开发人员的开发进度等时间安排来制定一个测试时间进度初稿,并将测试时间进度表交与整个项目团队成员大家一起讨论和分析,最终和所有人达成共识制定出一个大家都可以执行的测试时间进度表。时间表中包括了开发人员提交功能或功能模块的时间,以及为了更好的执行测试,配合测试人员进行功能培训的时间,以及测试执行时间等, 都详细的写到WBS 中,并按照这个时间进度表来执
13、行项目的测试任务。4、测试计划都包括那些项答案: 1. 测试计划目标2. 测试参考文档3.测试术语与定义4. 测试内容5. 测试人员的分工6. 测试进度7. 测试流程8. 测试工具9.测试缺陷管理10. 测试的风险分析5、测试用例如何设计的答案:在测试 用例设计 之前首先要熟悉客户的需求文档或需求规格说明书,以做到对被测系统的熟悉, 充分了解产品的详细功能, 并在熟悉过程中即使与研发人员和客户人员进行有效的沟通。 然后从需求中提炼中各个模块的详细功能点编写出一个测试要点的文档。 根据测试要点设计测试用例, 测试要点与测试用例是一个一对多的关系, 一个测试要点可能会需要几个测试用例的验证,有正常
14、的操作和异常的操作, 甚至是几个正常与几个异常的操作,这要根据实际功能的要求来具体分析具体实现。6、测试用例包括那些项答案:产品名称、功能模块、用例的编号、编写人、被测功能的简述,测试的预置条件,测试步骤,预期结果,实际结果。7、缺陷处理流程1.讲缺陷的详细信息录入缺陷管理系统,并分配给对应的开发人员2.如果遇到一些难以再现的缺陷, 在开发人员修正过程中配合开发人员进行Bug 的再现。3.开发人员修正 Bug 后,会在缺陷管理系统中将修正后的Bug 状态更改,通常为 Fixed 状态。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - -
15、- 名师精心整理 - - - - - - - 第 5 页,共 8 页 - - - - - - - - - 4.新版本发布后,测试人员会讲bug 状态已经更改为 Fixed 的 Bug 进行回归测试。如果测试通过, 则将该 Bug 关闭,如果仍未通过, 则将该 Bug 从 Fixed更改为 Reopen 状态,继续让开发人员来修正。并等待下一个新版本发布后的二次回归测试。8、缺陷报告包括那些项答案:编写人、被测系统的版本号、测试环境、预期结果、实际结果、对于实际结果如有必要附上截图、测试用例数、测试用例通过数,测试用例的通过率、对缺陷的一个分析汇总。9、缺陷报告严重级别的划分严重级别的错误: 影
16、响系统整体基本流程运行的错误,由于某一操作造成系统死循环或服务器崩溃的错误较严重:功能实现错误、内部计算错误、一般: UI 错误,一些易用性的错误或建10、开发人员修复缺陷后,如何保证不影响其他功能答案:Bug 的修复以及新功能的添加都有可能对版本造成一些影响,为了避免, 在新版本发布以后, 首先会对新版本做一个基础的流程测试也叫做冒烟测试,如果测试基本流程都顺利通过没有任何问题,那么测试人员可以继续进行详细的测试,否则就将冒烟测试中出现的问题以及问题有可能出现的原因反馈给开发人员,由开发人员修正后再次发版,进行测试。这是一个迭代的过程。11、发现问题后你是如何判断其是否是BUG,你是如何提交
17、的?答案:测试用例是经过评审组严格的评审,完全按照客户的需求规格说明书作为最终依据来评审的, 如果测试过程中, 测试结果与实际结果不符就很可能是Bug,如果一些比较明显的问题就直接录入缺陷管理系统,如果是一些边界问题不容易确定的,可以通过和开发人员甚至是设计人员等进行沟通最后得出一个结果究竟是否是 Bug,如果是 Bug 就录入,如果是一个需要增加的新功能等,可以录入缺陷管理系统,类型为新需求。12、修复一个 BUG 而导致其他的 BUG 出现,该如何处理答案:帮助开发人员分析问题锁定原因然后进行新Bug 的修正。13、测试总结报告包括那些项答案:测试用例的通过数,测试用例的未通过数,以及测试
18、用例的通过率,未通过的功能都集中在哪几个功能模块,根据测试经验以及测试结果进行一个缺陷的分析和建议。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 8 页 - - - - - - - - - 14、测试工作进行到一半是,发现时间不够,你如何处理答案:1.与客户沟通本次发布的版本什么是最重要的,什么是其次,我会安排一个优先级来对整体测试功能进行一个筛选。2.我会和测试组原体人员一起加班15、开发与测试的关系答案:开发和测试是一个整体, 也可以说测试驱动着开发, 开发配合着测
19、试,相辅相成的,在一个完整的项目组中缺一不可。16、如果你是测试组长你如何对项目及组员进行管理答案: 首先要从需求开始,充分了解被测系统的功能以及业务需求,并在遇到问题的时候及时有效的与开发人员以及其他项目相关人员进行沟通,做到最被测系统的十分熟悉。并了解整个测试组的成员他们的测试技能以及擅长的工作,做到测试任务的合理分配,得以让测试工作快速,稳定高效的进行!17、如果你提交的BUG 开发人员说这不是缺陷你该怎么办答:若遇到开发人员说提交BUG 不是缺陷则跟项目组的需求人员,设计人员以及该功能的开发人员共同讨论做确认。1、软件质量 的定义是什么?2、软件测试 的对象包括哪些?3、试结合软件开发
20、流程模型,描述对应不同的阶段测试需要哪些工作?4、单元测试 、集成测试、 系统测试 、验收测试各测试的正确策略含义和被测对象是什么?5、单元测试、集成测试、系统测试的侧重点是什么?6、 alpha 测试和 Beta 测试的定义是什么?并描述Alpha、 Beta 测试的区别?7、白盒和 黑盒测试 的定义是什么?名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 8 页 - - - - - - - - - 8、软件测试过程中都有哪些工作要做,分别由哪些不同的角色来完成这些任务?
21、9、测试计划的目的是什么,测试计划主要包括哪些部分,每一部分主要的内容和作用是什么,其中哪些是最重要?做好测试计划工作的关键是什么?10、测试计划的目的是什么?测试计划的内容都包括哪些?其中哪些是最重要的?11、什么是测试用例,它由哪些基本元素组成?并举例说明12、什么是测试脚本,测试用例与测试脚本两者的关系是什么?13、你认为提前做好测试用例有用吗?为什么?14、如果业务层和数据层之间有信赖关系,你该怎么写单元测试?15、对于产品的用户友好性测试,你认为从哪些方面来测试16、bug 中需要包括哪些内容并举例说明。如何提高bug 记录的质量?17、bug 管理系统的主要功能是什么, 以及在项目中各个角色的使用者是如何使用 bug 管理系统的?18、若你提交了一个bug 但开发人员说这不是问题,你该如何处理?19、你认为一个测试工作人员最基本的素质是什么?从(能力、责任心)选一个,简答为什么?20、怎么认为测试可以结束了?在你以前的工作中,对于分配给你的模块你用什么标准来衡量自己测试完毕了?名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 8 页 - - - - - - - - -