前言

本文章主要为备战金三银四的同仁准备,帮助您更好的应对面试官提问的同时并加强巩固前面所学知识,其中包括以下几类内容:测试技术类面试题(理论面试题(必背+拓展+测试用例)、数据库面试题、自动化及工具面试题和其他技术面试题)!

以上只截取其中一部分哦!!!

1.什么是兼容性测试?兼容性测试侧重哪些方面?

参考答案:
兼容测试主要是检查软件在不同的硬件平台、软件平台上是否可以正常的运行,即是通常说的软件的可移植性。
兼容的类型,如果细分的话,有平台的兼容,网络兼容,数据库兼容,以及数据格式的兼容。
兼容测试的重点是,对兼容环境的分析。通常,是在运行软件的环境不是很确定的情况下,才需要做兼容。根据软件运行的需要,或者根据需求文档,一般都能够得出用户会在什么环境下使用该软件,把这些环境整理成表单,就得出做兼容测试的兼容环境了。
兼容和配置测试的区别在于,做配置测试通常不是Clean OS下做测试,而兼容测试多是在Clean OS的环境下做的。

2.测试的策略有哪些?

参考答案:
黑盒/白盒,静态/动态,手工/自动,冒烟测试,回归测试,公测(Beta测试的策略)

3.描述测试用例设计的完整过程?

参考答案:
需求分析 + 需求变更的维护工作;
根据需求得出测试需求;
设计测试方案,评审测试方案;
方案评审通过后,设计测试用例,再对测试用例进行评审;

4.单元测试的策略有哪些?

参考答案:
逻辑覆盖、循环覆盖、同行评审、桌前检查、代码走查、代码评审、景泰数据流分析。

5.你所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型的区别与联系(如功能测试、性能测试……)?

参考答案:
Compatibility Testing(兼容性测试),也称“Configuration testing(配置测试)”,测试软件是否和系统的其它与之交互的元素之间兼容,如:浏览器、操作系统、硬件等。验证测试对象在不同的软件和硬件配置中的运行情况。
Functional testing (功能测试),也称为behavioral testing(行为测试),根据产品特征、操作描述和用户方案,测试一个产品的特性和可操作行为以确定它们满足设计需求。本地化软件的功能测试,用于验证应用程序或网站对目标用户能正确工作。使用适当的平台、浏览器和测试脚本,以保证目标用户的体验将足够好,就像应用程序是专门为该市场开发的一样。
Performance testing(性能测试),评价一个产品或组件与性能需求是否符合的测试。包括负载测试、强度测试、数据库容量测试、基准测试等类型。

6.Beta测试与Alpha测试有什么区别?

参考答案:
Beta testing(β测试),测试是软件的多个用户在一个或多个用户的实际使用环境下进行的测试。开发者通常不在测试现场。
Alpha testing (α测试),是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试。

7.软件的评审一般由哪些人参加?其目的是什么?

参考答案:
在正式的会议上将软件项目的成果(包括各阶段的文档、产生的代码等)提交给用户、客户或有关部门人员对软件产品进行评审和批准。其目的是找出可能影响软件产品质量、开发过程、维护工作的适用性和环境方面的设计缺陷,并采取补救措施,以及找出在性能、安全性和经济方面的可能的改进。
人员:用户、客户或有关部门开发人员,测试人员,需求分析师都可以,就看处于评审那个阶段。

8.测试活动中,如果发现需求文档不完善或者不准确,怎么处理?

参考答案:
测试需求分析 发现需求文档不完善或者不准确,应该立即和相关人员进行协调交流。

9.阶段评审与项目评审有什么区别?

参考答案:
阶段评审 对项目各阶段评审:对阶段成果和工作;
项目评审 对项目总体评审:对工作和产品。

10.什么是桩模块?什么是驱动模块?

参考答案:
桩模块:被测模块调用模块
驱动模块:调用被测模块

11.你认为做好测试用例工作的关键是什么?

参考答案:
需求和设计文档的理解程度,对系统的熟悉程度。

12.简述一下缺陷的生命周期?

参考答案:
提交->确认->分配->修复->验证->关闭。

13.你觉得软件测试通过的标准应该是什么样的?

参考答案:
缺陷密度值达到客户的要求。

14.一套完整的测试应该由哪些阶段组成?

参考答案:
测试计划、测试设计与开发、测试实施、测试评审与测试结论

15.单元测试的主要内容?

参考答案:
  模块接口测试、局部数据结构测试、路径测试、错误处理测试、边界测试

16.集成测试也叫组装测试或者联合测试,请简述集成测试的主要内容?

参考答案:
(1)在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失;
(2)一个模块的功能是否会对另一个模块的功能产生不利的影响;
(3)各个子功能组合起来,能否达到预期要求的父功能;
(4)全局数据结构是否有问题;
  (5)单个模块的误差累积起来,是否会放大,从而达到不能接受的程度。

17.简述集成测试与系统测试关系?

参考答案:
(1)集成测试的主要依据概要设计说明书,系统测试的主要依据是需求设计说明书;
  (2)集成测试是系统模块的测试,系统测试是对整个系统的测试,包括相关的软硬件平台、网络以及相关外设的测试。

18.软件测试的文档测试应当贯穿于软件生命周期的全过程,其中用户文档是文档测试的重点。那么软件系统的用户文档包括哪些?

参考答案:
用户手册
安装和设置指导
联机帮助
指南、向导
样例、示例和模板
授权/注册登记表
最终用户许可协议

19.软件系统中除用户文档之外,文档测试还应该关注哪些文档?

参考答案:
开发文档
软件需求说明书
    数据库设计说明书
    概要设计说明书
    详细设计说明书
    可行性研究报告
管理文档
    项目开发计划
    测试计划
    测试报告
    开发进度月报
    开发总结报告

20.简述软件系统中用户文档的测试要点?

参考答案:
(1)读者群。文档面向的读者定位要明确。对于初级用户、中级用户以及高级用户应该有不同的定位
(2)术语。文档中用到的术语要适用与定位的读者群,用法一致,标准定义与业界规范相吻合。
(3)正确性。测试中需检查所有信息是否真实正确,查找由于过期产品说明书和销售人员夸大事实而导致的错误。检查所有的目录、索引和章节引用是否已更新,尝试链接是否准确,产品支持电话、地址和邮政编码是否正确。
(4)完整性。对照软件界面检查是否有重要的分支没有描述到,甚至是否有整个大模块没有描述到。
(5)一致性。按照文档描述的操作执行后,检查软件返回的结果是否与文档描述的相同。
(6)易用性。对关键步骤以粗体或背景色给用户以提示,合理的页面布局、适量的图表都可以给用户更高的易用性。需要注意的是文档要有助于用户排除错误。不但描述正确操作,也要描述错误处理办法。文档对于用户看到的错误信息应当有更详细的文档解释。
(7)图表与界面截图。检查所有图表与界面截图是否与发行版本相同。
(8)样例与示例。像用户一样载入和使用样例。如果是一段程序,就输入数据并执行它。以每一个模块制作文件,确认它们的正确性。
(9)语言。不出现错别字,不要出现有二义性的说法。特别要注意的是屏幕截图或绘制图形中的文字。
  (10)印刷与包装。检查印刷质量;手册厚度与开本是否合适;包装盒的大小是否合适;有没有零碎易丢失的小部件等等。

21.如何理解压力、负载、性能测试测试?

参考答案:
性能测试是一个较大的范围,实际上性能测试本身包含了性能、强度、压力、负载等多方面的测试内容。
压力测试是对服务器的稳定性以及负载能力等方面的测试,是一种很平常的测试。增大访问系统的用户数量、或者几个用户进行大数据量操作都是压力测试。而负载测试是压力相对较大的测试,主要是测试系统在一种或者集中极限条件下的相应能力,是性能测试的重要部分。100个用户对系统进行连续半个小时的访问可以看作压力测试,那么连续访问8个小时就可以认为负载测试,1000个用户连续访问系统1个小时也可以看作是负载测试。
实际上压力测试和负载测试没有明显的区分。测试人员应该站在关注整体性能的高度上来对系统进行测试。

22.软件文档测试主要包含什么?

参考答案:
随着软件文档系统日益庞大,文档测试已经成为软件测试的重要内容。文档测试对象主要如下:
-包装文字和图形;
-市场宣传材料、广告以及其它插页;
-授权、注册登记表;
-最终用户许可协议;
-安装和设置向导;
-用户手册;
-联机帮助;
-样例、示范例子和模板;
-……
文档测试的目的是提高易用性和可靠性,降低支持费用,因为用户通过文档就可以自己解决问题。因文档测试的检查内容主要如下:
-读者对象——主要是文档的内容是否能让该级别的读者理解;
-术语——主要是检查术语是否适合读者;
-内容和主题——检查主题是否合适、是否丢失、格式是否规范等;
-图标和屏幕抓图——检查图表的准确度和精确度;
-样例和示例——是否与软件功能一致;
-拼写和语法;
-文档的关联性——是否与其它相关文档的内容一致,例如与广告信息是否一致;
文档测试是相当重要的一项测试工作,不但要给予充分的重视,更要要认真的完成,象做功能测试一样来对待文档测试。

23.没有产品说明书和需求文档地情况下能够进行黑盒测试吗?

参考答案:
这个问题是国内测试工程师经常遇到的问题,根源就是国内软件开发文档管理不规范,对变更的管理方法就更不合理了。实际上没有任何文档的时候,测试人员是能够进行黑盒测试的,这种测试方式我们可以称之为探索测试,具体做法就是测试工程师根据自己的专业技能、领域知识等不断的深入了解测试对象、理解软件功能,进而发现缺陷。
在这种做法基本上把软件当成了产品说明书,测试过程中要和开发人员不断的进行交流。尤其在作项目的时候,进度压力比较大,可以作为加急测试方案。最大的风险是不知道有些特性是否被遗漏。
软件测试的风险主要体现在哪里?
参考答案:
我们没有对软件进行完全测试,实际就是选择了风险,因为缺陷极有可能存在没有进行测试的部分。举个例子,程序员为了方便,在调试程序时会弹出一些提示信息框,而这些提示只在某种条件下会弹出,碰巧程序发布前这些代码中的一些没有被注释掉。在测试时测试工程师又没有对其进行测试。如果客户碰到它,这将是代价昂贵的缺陷,因为交付后才被客户发现。
因此,我们要尽可能的选择最合适的测试量,把风险降低到最小。

25.发现的缺陷越多,说明软件缺陷越多吗?

参考答案:
这是一个比较常见的现象。测试工程师在没有找到缺陷前会绞尽脑汁的思考,但是找到一个后,会接二连三的发现很多缺陷,颇有个人成就感。其中的原因主要如下:
-代码复用、拷贝代码导致程序员容易犯相同的错误。类的继承导致所有的子类会包含基类的错误,反复拷贝同一代码意味可能也复制了缺陷。
-程序员比较劳累是可以导致某些连续编写的功能缺陷较多。程序员加班是一种司空见惯的现象,因此体力不只时容易编写一些缺陷较多的程序。而这些连续潜伏缺陷恰恰时测试工程师大显身手的地方。
“缺陷一个连着一个”不是一个客观规律,只是一个常见的现象。如果软件编写的比较好,这种现象就不常见了。测试人员只要严肃认真的测试程序就可以了。

26.所有的软件缺陷都能修复吗?所有的软件缺陷都要修复吗?

参考答案:
从技术上讲,所有的软件缺陷都是能够修复的,但是没有必要修复所有的软件缺陷。测试人员要做的是能够正确判断什么时候不能追求软件的完美。对于整个项目团队,要做的是对每一个软件缺陷进行取舍,根据风险决定那些缺陷要修复。发生这种现象的主要原因如下:
-没有足够的时间资源。在任何一个项目中,通常情况下开发人员和测试人员都是不够用的,而且在项目中没有预算足够的回归测试时间,再加上修改缺陷可能引入新的缺陷,因此在交付期限的强大压力下,必须放弃某些缺陷的修改。
-有些缺陷只是特殊情况下出现,这种缺陷处于商业利益考虑,可以在以后升级中进行修复。
-不是缺陷的缺陷。我们经常会碰到某些功能方面的问题被当成缺陷来处理,这类问题可以以后有时间时考虑再处理。
最后要说的是,缺陷是否修改要由软件测试人员、项目经理、程序员共同讨论来决定是否修复,不同角色的人员从不同的角度来思考,以做出正确的决定。

27.软件测试人员就是QA吗?

参考答案:
软件测试人员的职责是尽可能早的找出软件缺陷,确保得以修复。而质量保证人员(QA)主要职责是创建或者制定标准和方法,提高促进软件开发能力和减少软件缺陷。测试人员的主要工作是测试,质量保证人员日常工作重要内容是检查与评审,测试工作也是测试保证人员的工作对象。
软件测试和质量是相辅相成的关系,都是为了提高软件质量而工作。

28.什么是软件测试,软件测试的目的?

参考答案:
定义:使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别
目的:确保产品完成了它所承诺或公布的功能,并且用户可以访问到的功能都有明确的书面说明;确保产品满足性能和效率的要求;确保产品是健壮的和适应用户环境的 ;确保最终交给用户的产品功能符合用户的需求,在产品交给用户之前尽可能多的发现并改正问题。

29.简述负载测试与压力测试的区别?

参考答案:
压力测试(Stress Testing)
压力测试的主要任务就是获取系统正确运行的极限,检查系统在瞬间峰值负荷下正确执行的能力。例如,对服务器做压力测试时就可以增加并发操作的用户数量;或者不停地向服务器发送请求;或一次性向服务器发送特别大的数据等。看看服务器保持正常运行所能达到的最大状态。人们通常使用测试工具来完成压力测试,如模拟上万个用户从终端同时登录,这是压力测试中常常使用的方法。
负载测试(Volume Testing)
用于检查系统在使用大量数据的时候正确工作的能力,即检验系统的能力最高能达到什么程度。例如,对于信息检索系统,让它使用频率达到最大;对于多个终端的分时系统,让它所有的终端都开动。在使整个系统的全部资源达到“满负荷”的情形下,测试系统的承受能力。

30.写出bug报告流转的步骤,每步的责任人及主要完成的工作?

参考答案:(要结合自己实际的工作经验进行回答,不同公司略有区别)
测试人员提交新的Bug入库,错误状态为New。
高级测试员/测试经理验证错误,如果确认是错误,分配给开发组。设置状态为Open。如果不是错误,则拒绝,设置为Declined状态。
开发经理分配bug至对应的模块开发人员。
开发人员查询状态为Open的Bug,如果不是错误,则置状态为Declined;如果是Bug则修复并置状态为Fixed。不能解决的Bug,要留下文字说明及保持Bug为Open状态。
对于不能解决和延期解决的Bug,不能由开发人员自己决定,一般要通过某种会议(评审会)通过才能认可。
测试人员查询状态为Fixed的Bug,然后验证Bug是否已解决,如解决,置Bug的状态为Closed,如没有解决,置bug状态为Reopen。

31.写出bug报告当中一些必备的内容?

参考答案:
硬件平台和操作系统
测试应用的硬件平台(Platform),通常选择“PC”。
测试应用的操作系统平台(OS)。
a) 版本
提交缺陷报告时通过该字段标识此缺陷存在于被测试软件的哪个版本。
b) Bug报告优先级
c) Bug状态
d) Bug的编号
e) 发现人
f) 提交人
g) 指定处理人
h) 概述
i) 从属关系
j) 详细描述
k) 严重程度
l) 所属模块
m) 附件
n) 提交日期
32.画出软件测试的V模型图。
参考答案:

因个人时间有限以上只列取为软件测试技术类面试题中的一部分,如果需要完整面试题,都可以点我进行领取,如有问题欢迎评论私信留言!

2021春招,备战金三银四,软件测试面试宝典全家桶(含答案)!相关推荐

  1. 2022春招、金三银四,面试官必问的1000道Java面试题及答案整理

    前言 不论是校招还是社招都避免不了各种面试,如何去准备面试就显得格外重要. 这不马上金三银四了,相信有很多小伙伴为社招或跳槽做准备,最近小编也常常在刷面试题,发现网上很多Java面试题都没有答案,所以 ...

  2. 备战金三银四软件测试面试刷题小程序,错过你会后悔的

    目录 前言 软件测试基础题目 数据库面试题 接口测试工具 华为软件测试面试题 Linux服务器 总结 前言 想年后找工作或者等金三银四跳槽涨薪的朋友们有福了,今天给大家推荐一个软件测试面试的刷题小程序 ...

  3. 金三银四软件测试工程师面试题(含答案)

    前言:此文专门记载本人平时面试以及收藏的面试题目,如果有错误之处请及时指正,谢谢! 1.python的数据类型有哪些 答:Python基本数据类型一般分为:数字.字符串.列表.元组.字典.集合这六种基 ...

  4. 拼多多终面竟被“Out”了?春节宅家复习,备战金三银四拿offer

    前言 随着互联网的发展,近两年来也涌现了越来越多的新兴互联网企业,除了BAT三巨头以外,其他互联网公司的表现力和实力也不容小觑,拼多多就是其一,如果要说拼多多是发展最快的新兴互联网公司之一,应该是没有 ...

  5. 2023​史上最全软件测试工程师常见的面试题总结​ 备战金三银四

    在这里我给大家推荐一套专门讲解软件测试简历,和面试题的视频,实测有效,建议大家可以看看! 春招必看已上岸,软件测试常问面试题[全网最详细,让你不再踩坑]_哔哩哔哩_bilibili春招必看已上岸,软件 ...

  6. 金三银四JAVA面试总结:Java+并发+Spring+MySQL+分布式+Redis+算法+JVM等

    今年的金三已经过去.银四也快过半,大家可以说是都有点难了,有的朋友可能还在被隔离中,但是咱们加油找工作的时候,也要记得保护好自己,不能松懈. 现在的处境大致是有人欢喜有人愁,不管你是喜是忧,坚持学习总 ...

  7. 2023备战金三银四,Python自动化软件测试面试宝典合集(三)

    马上就又到了程序员们躁动不安,蠢蠢欲动的季节~这不,金三银四已然到了家门口,元宵节一过后台就有不少人问我: 现在外边大厂面试都问啥 想去大厂又怕面试挂 面试应该怎么准备 测试开发前景如何 面试,一个程 ...

  8. 备战金三银四,软件测试面试前都要做哪些准备?速看

    马上就是金三银四了,不知道小伙伴们有没有准备好呢?希望这篇文章的内容可以帮助到大家! 一.问题预测 让简单介绍下自己(每次面试开场) 让说下自己会的内容 看了哪些书籍(有问到) 了解过哪些技术博客/论 ...

  9. 2023备战金三银四,Python自动化软件测试面试宝典合集(二)

    马上就又到了程序员们躁动不安,蠢蠢欲动的季节~这不,金三银四已然到了家门口,元宵节一过后台就有不少人问我: 现在外边大厂面试都问啥 想去大厂又怕面试挂 面试应该怎么准备 测试开发前景如何 面试,一个程 ...

最新文章

  1. Flume NG 学习笔记(八)Interceptors(拦截器)测试
  2. iOS 跳转App的二三事
  3. editplus 配置 golang 开发调试环境
  4. python中如何删除字典中的元素_python中字典删除元素
  5. C语言中strdup函数使用方法
  6. Ubuntu下Memcache的安装与基本使用
  7. php 断点续传 暂停,PHP 断点续传实例详解
  8. ajax-FormData快速序列化表单数据以及文件上传
  9. python如何下载安装tensorflow_TensorFlow下载与安装
  10. Cannot load module file xxx.iml Intellij
  11. 计算机个人职业生涯规划
  12. PHP开发环境phpnow的详细安装步骤
  13. Centos7安装gos脚本
  14. 7-38 寻找大富翁 (25分)
  15. 简述冯诺依曼工作原理_冯.诺依曼计算机的基本工作原理是什么??
  16. Skyline 质谱仪开源分析软件
  17. Python - 归一化与反归一化
  18. JavaScript基础(详细总结)
  19. Limesdr-USB 基于 Ubuntu18.04 环境建立
  20. 使用vbscript和wscript.shell实现连续多次发送微信消息

热门文章

  1. 页面gridview保留两位小数
  2. python工程师认证考试 怎么报名_我是如何通过TensorFlow开发人员认证考试的?
  3. 5-羟色胺(serotonin)
  4. 安排一个简单的软件开发项目的进度
  5. 干货满满!OpenStack的探索之路——基础理论精讲
  6. LAMP项目部署实战1
  7. keil工具中中ini文件的使用
  8. BCF 应用场景以及基础概念介绍
  9. Tribon 软件操作 概念(1)
  10. 人工智能和智能控制有什么关系?