【软件测试面试】职言 | 40个软件测试面试题,找工作看过来 ...

打印 上一主题 下一主题

主题 870|帖子 870|积分 2614


低级难度

假如你在这个范畴没有太多履历,并且刚刚开始入行,这几个题目对于刚起步的测试人员来说,在面试时经经常会问到。
1. 你对软件测试的理解是什么?

软件测试是用来判断软件程序的有效性、准确性和可用性的程序。因此,软件测试包括运行一个体系或程序来寻找错误,错误或其他缺陷。其目的是验证代码是否满意客户的独特需求、期望和要求。
2. 表明软件测试的差别类型。

i. 单元测试
单元测试集中在软件设计的最基本构件上。程序员将经常利用样本输入实验这项任务,并观察得当的输出。我们测试单一单元或相干元素的集合。
ii. 集成测试
集成测试是用来验证一组合并在一起的元素。它验证了体系是否符合预定的功能要求。集成测试有四种类型:自上而下,自下而上,三明治,大爆炸,和i-spy只是几个例子。
iii. 回归测试
每次添加新的模块时都会对程序举行修改。回归测试确保每个元素在每次更新后都能有效运作。
iv. 性能测试
性能测试检查软件在综合体系中利用时的性能如何。它被用来评估程序的服从和速度。它也被称为负载测试,因为它检查体系在指定负载下的性能。
v. 验收测试
验收测试确保产品符合其目标,并将资助最终用户实现预期的结果。
3. 说明软件测试的关键挑衅。

软件测试中的几个庞大困难列举如下:
由于缺乏标准文件而无法理解应用程序
测试人才短缺
与客户沟通应用需求,必要测试人员有良好的谛听和理解能力
决定何时克制测试,并对其做出明智的决定
对时间敏感的任务的能力可能不容易被灌输
确定哪些测试要先运行的优先次序的能力必要专业知识
利用最佳数目的测试案例来测试完备的应用程序
4. 表明黑盒、白盒和灰盒测试技能。

i. 黑盒测试
黑盒测试验证了软件的功能,而没有检查支持其工作的后端机制。它几乎在软件测试技能的全部层面都有广泛的应用。
ii. 白盒测试
白盒测试在评估一个程序的功能时思量其内部操纵。单元测试和集成测试都利用了它。
iii. 灰盒测试
当黑盒和白盒测试技能相结合时,就产生了灰盒测试过程。它在软件测试过程中被应用。通过采用这种策略,你可以评估一个软件程序或应用程序,而只知道其基本工作原理的一部分。
5. 什么是测试计划,它包括什么?

一个写得很好的测试计划文件,详细说明了软件测试的范围和活动,对项目的成功是必要的。从本质上讲,测试计划是一个持续的文件,由测试经理监控和控制。它本质上是一个蓝图,概述了谁、什么、何时、如何以及其他完备测试程序的细节。
以下信息必须包括在测试计划中:
试的原因
测试策略
测试目标
资源规划
测试范围
测试交付物
退出/停息标准
6. 阐明软件测试中的测试脚本、测试场景和测试案例。

i. 测试方案
一个测试方案通常由几个案例构成,涵盖了一个软件应用的功能。它给出了必要的测试的概述。
ii. 测试用例
作为软件开发过程的一部分,一组被称为测试案例的程序被实验,以验证一个特定的特征或功能。一个测试用例包括测试步调、数据、先决条件和后决条件,以验证一个特定的要求。
iii. 测试脚本
它是一组将被遵照的指令,以确认被测试体系的功能符合预期。该文件概述了每个动作和预期结果。
7. 测试覆盖率是什么意思?

权衡所做测试量的质量指标被称为测试覆盖率(百分比)。别的,它还被用来增长任何缺失的测试案例。非功能测试和功能测试操纵都应该思量测试覆盖率。
8. 表明一下软件测试中的验证和确认。

验证是软件测试中利用的一种方法,以确保产品是按照要求和利用公认的开发实践开发的。在这个过程中包括以下行动:
检查
审查
演练
演示
验证是一种技能,用于确保所开发的产品没有错误,并能按预期运行。以下活动构成了它:
功能测试
非功能测试
9. 什么是静态测试?它什么时间开始,包括什么?

静态测试是一种白盒方法,引导开发人员对照检查表检查他们的代码,以确定题目。在没有完成应用程序或程序的环境下,开发人员可能开始静态测试。因为静态测试比动态测试在更短的时间内覆盖更多的内容,所以它的本钱效益更高。
10. 我们可以在任何阶段举行体系测试吗?

不可以。体系测试只有在全部模块都已安装并正常运行后才开始。然而,它必须在UAT(用户验收测试)之前举行。

中级难度

11. 优先级和严峻性之间的接洽是什么?

严峻性表示一个错误的重量和深度。它形貌了应用程序的观点。
优先级告诉人们哪个错误必须起首被修复,它概述了用户的观点。
12. 端到端测试的目的是什么?

端到端测试是一种方法,用于覆盖从开始到竣事的每一个潜在的应用流程。这个过程确定了软件的依靠性,并确认正确的输入在差别的软件模块和子体系中被传输。
13. 定义API。

应用编程接口或API答应用户通过抽象内部工作和复杂性,集中精力于操纵软件程序所需的输入和输出。它作为两个软件组件的通信渠道。
开发人员在创建新软件时,除了重新开始编写新代码外,还经常利用其他第三方库。通过提供一个直接的接口,API可以使两个软件组件之间举行通信。
提供应用程序所需的数据是API的另一种用途。例如,思量一个表现温度的气候应用程序。你可以利用景象局提供的API,而不是开发测量温度的技能。
14. 你能形貌一下差别类型的测试覆盖技能吗?

测试覆盖过程是用来评估你是否在测试全部必要测试的东西。测试覆盖为尚未覆盖的范畴制造困难,进步测试套件的团体质量。我们可以利用这些方法来加强或最大化测试覆盖率。
15. 什么是数据流测试?

数据流测试夸大建立测试用例,涵盖围绕变量定义的控制流途径及其在模块中的利用。在测试用例中预计会出现以下品质:
模块的输入数据
与测试有关的控制流
如何利用和定义相干变量的例子
测试用例应该产生什么结果
16. 定义敏捷测试,并说明其紧张性。

被称为 "敏捷测试 "的软件测试方法是从客户的角度来评估软件。开发团队不必要在开始QA之前完成编码,这是一个好处。相反的,测试和编码是相互排斥的。但它可能必要与客户不断互动。
17. 说明测试驱动和测试存根之间的区别。

一段被称为测试驱动程序的代码被用来调用一个正在被验证的软件组件。它有助于利用自下而上的方法来测试应用程序。
一个被称为测试存根的假程序被集成到一个应用程序中以实现其功能。它适用于遵照自上而下方法的测试。
举个例子:
思量一种环境,我们必要评估模块A和B之间的接口,到目前为止只有模块A被创建。我们可以利用实际的或假的模块B来测试模块A。模块B在这种环境下是测试存根。
如今,模块A的数据不能直接发送到或吸收到模块B。在这种环境下,必要测试驱动,也就是外部功能,将数据从一个模块传输到另一个模块。
18. 假如没有定义需求,你将如何测试一个产品?

假如没有现成的必要规格,有可能根据产品的假设制定测试计划。然而,在测试计划中,你必须彻底记录全部的信念。
19. 为什么不可能彻底测试一个程序?

下面列出了阻碍软件彻底测试的两个主要停滞:
对软件要求有许多可能的表明,因为它们是主观的
一个软件程序必要的输入、输出和路径组合的数目可能过多
20. 假如在测试过程中出现了错误,你会怎么做?

假如出现bug,可以接纳以下步调:
我们可以做额外的测试,以确认题目得到充分的形貌
为了确保这个题目不会在其他输入下持续存在,我们可以再举行一些测试
假如我们对bug的完备范围有信心,我们可以添加信息并提交该bug
21. BUG、缺陷和错误之间的区别。

术语 "错误 "指的是一个编码错误。一个构建的代码假如不符合要求,在功能上就会失败。开发团队承认的缺陷被称为错误。手动测试员发现的错误会变成一个缺陷。
22. 故障是什么意思?

术语 "故障 "是指阻止软件实验预期功能的环境。
23. 你对STLC的理解是什么?

软件测试生命周期(STLC)建议规划和构造如何举行测试。为了进步产品的质量,STLC模子包括几个操纵。
STLC模子概述了以下步调:
需求分析
测试计划
设置测试用例开发
环境设置
测试实验
测试周期竣事
24. 什么是功能和非功能测试案例?

i. 功能测试
它检查被测试软件的行为方式。应用测试是由一个被称为软件规范的文件来引导的,它是基于客户的要求。
ii. 非功能测试
当一个软件应用程序在任何环境下都能像用户预期的那样有效地实验,就可以说它是可靠的。测试这些因素以确定质量是至关紧张的。像这样的测试被称为非功能测试。
25. 说明差别类型的功能测试方法。

功能测试所涵盖的验证方法包括:
单元测试
烟雾测试
SAT
完善性测试
接口测试
集成测试
体系测试
回归测试
26. 区分重测和回归测试。

回归测试和重新测试可以有以下差别:
为了确保缺陷不再存在,我们重新测试。然而,回归测试确保缺陷补丁不影响其他应用组件。
回归测试案例验证了一个或多个模块的功能。
回归测试确保成功的测试案例被重新运行。相反,重新测试必要运行失败的测试案例。
回归比重测不那么关键。然而,偶然这两个过程也会同时举行。

高级难度

27. 什么是探索性测试?

探索性测试包括同时学习测试设计和实验。换句话说,这是一种实践方法,测试人员更多地到场到测试的实验中,而不是计划中。
28. 区分错误泄漏和错误发布。

i. 错误泄漏。错误泄漏是指测试团队在软件测试过程中未能发现错误,而最终用户或客户发现了这个错误。
ii. 漏洞发布。当一个特定的软件版本发布时,有几个已知的bug,这就是bug发布。这些bug的严峻性/优先级通常较低。当软件公司可以接受已发布产品中的题目,但不乐意花时间或费用在该特定版本中解决这些题目时,就会举行发布。
29. 说明性能测试和Monkey Testing之间的区别。

性能测试评估一个体系的响应性、可扩展性和稳定性。它被定义为通过到达反应时间、吞吐量和资源利用水平来满意一个项目或产品的性能目标。
Monkey Testing包括让用户通过给它随机输入并观察应用程序的反应来测试一个应用程序。
30. 撰写错误陈诉时要思量什么?

在一份完美的错误陈诉中应包括以下基本内容:
一个特殊的ID
应提供故障的扼要说明
如何举行复制,包罗完备的测试程序,以重现该题目。别的,他们提供测试结果和题目发生的时间。
任何可能有助于重现该题目的体系设置环境
应用程序的模块或发生错误的区域
严峻水平
截图
31. 基于哪些因素,你会思量选择主动化测试而不是人工测试?

根据以下标准,主动化测试应该优先于手工测试:
定期实验测试是必要的
重复的步调是测试的一部分
测试在一个典型的运行环境中运行
主动化应该是为了加快进程
由于主动化,可重用性正在上升
对于每一次实验,都有主动化陈诉可用
一个微小的错误修复包罗在更小的版本中,如服务包,在这些环境下实验回归测试就足以举行验证了。
32. 什么是Silk Test?为什么要利用它?

一个专业的工具是为测试一个应用程序的功能和回归而创建的。它测试基于Windows、Java、Web和经典的客户/服务器应用程序。为了提供对数据库的直接访问和字段验证,Silk Test帮忙创建和管理测试计划。
33. 区分质量保障、质量控制和软件测试。

术语 “质量保障”(QA)是指一种有计划、有构造的方法,评估为创造高质量产品所接纳的步调的有效性,测试分析监控测试陈诉并调解程序以符合预期。
质量控制(QC)对产品的质量至关紧张。除了辨认缺陷外,QC还提出了改进步伐。所以,QC将QA建立的程序付诸实践。测试团队要对质量控制负责。
软件测试是确保由开发人员生成的产品满意用户需求的实践,找到错误并确保它们被修复是测试的目标。
34. 如安在你的环境中举行主动化测试?

主动化测试是在没有人工干预的环境下运行测试的过程。它通过工具大大减少了人工的干预,加快了测试程序。我们采用各种测试主动化工具,包括WinRunner、Selenium和QTP。这些工具可以产生测试陈诉和脚本,用于主动化应用验证。
35. 什么是缺陷年事?

缺陷年事权衡开发人员在测试人员发现缺陷后花了多长时间来补救。
在盘算一个缺陷的年事时要思量以下因素:
一个缺陷的出生日期是指它被分配给开发团队并被批准的日子
被遗漏的题目不在权限范围内
可以用小时或天来权衡年事
该缺陷在竣事日期被验证并关闭,而不但仅是开发团队纠正它的那一天
36. 什么是软件测试中的缺陷扫除服从?

测试步伐之一是缺陷扫除服从(DRE),它是用来权衡发现的题目息争决的缺陷数目之间的比率,这表明了开发团队在发布前解决题目的意义。
举例来说,假设开发团队在测试周期中发现的75个题目中,有62个在测量时已经得到解决。DRE将是:62/75 或 82.6%。
37. 什么是软件测试中的缺陷检测百分比?

测试指标包括缺陷检测百分比(DDP)。一个测试程序的功效可以通过盘算发布前发现的缺陷和客户利用软件后注意到的错误数目的比率来确定。
例如,假设QA在整个测试周期中发现了70个缺陷,而客户在发布后又陈诉了20个缺陷。因此,DDP将是:70/(70 + 20) = 72.1%
38. 潜在缺陷是什么意思?

埋伏的缺陷无法被用户发现,它是软件或应用程序中隐藏的缺陷。由于需求永远不会被完成,所以应用程序不会失败。
39. 测试陈诉的好处是什么?

测试结果可以确定一个项目的质量和当前状态。利益相干者和客户就可以接纳得当的步伐。有了彻底的测试陈诉文件,分析各个项目阶段会更容易。
40. 体系测试是什么意思?

利用黑盒技能测试的整个集成体系被称为体系测试,它确保计划符合要求。
末了的话:

正如你所看到的,这些触及各种主题,包括实用技能、对责任的把握、团队关系和软件测试理论等等,盼望这些内容对你有所资助。
末了: 下方这份完备的软件测试视频学习教程已经整理上传完成,朋侪们假如必要可以自行免费领取 【包管100%免费】

这些资料,对于【软件测试】的朋侪来说应该是最全面最完备的备战堆栈,这个堆栈也伴随上万个测试工程师们走过最艰难的路程,盼望也能资助到你!


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

东湖之滨

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表