您现在的位置是:首页 >其他 >测试老中医、备战金九银十:38道关于软件测试技术面试题(附带答案)网站首页其他
测试老中医、备战金九银十:38道关于软件测试技术面试题(附带答案)
简介测试老中医、备战金九银十:38道关于软件测试技术面试题(附带答案)
一、 请描述下你上个公司的测试流程
1. 问测试流程一般是想问你对项目的流程是否熟悉
答:不同类型的软件产品测试的方式和重点不一样,测试流程也会不一样。同样类型的软件产品,不同的公司所制订的测试流程也会不一样。虽然不同软件的详细测试步骤不同,但它们所遵循的最基本的测试流程是一样的 答案1: 需求宣讲->需求评审->开发系分->测试测分->提测->几轮测试->灰度->上线。 答案2: 分析测试需求→制订测试计划→设计测试用例→执行测试→编写测试报告。
2. 测试流程中,测试最需要关注的,测分,测分包括测试对需求的分析,对系统实现的分析,质疑不合理的设计,提出有风险,为产品和开发补位,同时也要分析到测试会有哪些路径分支,避免遗漏。
二、白盒和黑盒的区别,你是怎么运用的?
答:1. 不要说的太复杂,黑盒就是不知道内部如何实现,只从外部设计测试和执行用例,以达到业务覆盖,保障功能质量。通常以业务测试为主。 2. 白盒就是了解内部实现机制,针对实现来设计测试和执行用例。通常来说通读代码实现是为了对白盒测试进行补充,怕有漏掉的分支。但是白盒测试远不止这些,比如各种静态检查,覆盖率等。
三、你是如何做测试分析?
答:测试分析是非常见功力的事情,好的测分可以让需求更明确,让研发更加周全。 1. 明确需求和需求有可能造成的影响 2. 读懂系分,这个很关键,一定要看懂,遇到问题要找开发反复推敲,直到疑惑都解决。 3. 明确开发联调提测时间和每个需求的开发边界和测试边界 4. 探讨系统实现是否有风险,如果有风险有没有监控灰度回滚的策略。 5. 制定测试策略,是否需要兼容性测试,性能测试,专项测试 6. 将需求整理成测试用例
四、软件生存周期及其模型是什么?
答:软件生存周期是软件开发全部过程、活动和任务的结构框架,是从可行性研究到需求分析、软件设计、编码、测试、软件发布维护的过程。 在经历需求、分析、设计、实现、部署后,软件将被使用并进入维护阶段,直到最后由于缺少维护费用而逐渐消亡。这样的一个过程,称为"生命周期模型"(Life Cycle Model)。
五、什么是系统测试
答:系统测试是指针对软件产品系统进行的测试,是做完单元测试和集成测试后进行的测试,总体包含功能测试与非功能测试。 功能测试是验证软件系统功能是否实现系统需求规格的测试过程,而非功能测试是验证系统是否在实现功能测试的基础上,测试系统的容错性、稳定性、异常处理能力,以及高强度输入的处理能力、可用性、性能等是否符合用户要求的测试过程。
六、Web测试包括哪几类测试?
答:●界面测试 ●功能测试 ●可用性测试 ●客户端兼容性测试 ●安全性测试
七、 黑盒测试与白盒测试的区别
(1)黑盒测试也称功能测试,通过测试来检测每个功能是否都正常使用,测试中把程序看成一个黑盒子,在完全不考虑内部程序结构和特性的情况下 ,执行测试。黑盒测试是以用户角度,从输入数据与输出数据的对应关系出发进行的测试。 缺点是:发现不了本身设计或规格说明的问题。黑盒测试设计测试用例的方法包括:等价类划分法、边界值分析法、判定表法、因果图法、正交法、错误猜测法等; (2)白盒测试是基于代码测试,白盒是指盒子是可视的,清楚内部是如何运作的,白盒测试人员要全面了解程序内部逻辑结构、对所有的逻辑路径进行测试。 常用的白盒测试用例设计方法有:语句覆盖法、判定覆盖法、条件覆盖法、判定条件覆盖法、路径覆盖法 ;
八、什么是冒烟测试
答:冒烟测试是对应用程序的重点功能进行测试,主要是看测试的软件主要功能能否实现,环境通不通
九、Bug的生命周期
答:录入缺陷后,测试人员应该跟踪一个缺陷的整个生命周期,从new到closed的所有状态包括new、open、fixed、rejected、delay、closed和reopen这些状态。 提交缺陷到缺陷管理工具,这时缺陷的状态是new。 当确认是bug后,打开缺陷,此时缺陷状态为open,并且指派给相应的开发人员。 开发人员进行修改把缺陷状态置为fixed修改状态,修改好后等待测试人员回归测试。 如果开发人员认为不是bug有权拒绝修改把缺陷状态改为rejected。 如果开发人员认为暂时不需要修改或暂时不能修改,则延后修改,缺陷状态为delay。 修改状态的bug经过测试人员复测通过后,则关闭bug,状态为closed。 如果复测不通过,则重新打开bug这时的缺陷状态是reopen,等待开发人员重新修改。
十、 如何测试一部电梯
答:功能性方面:首先看看这部电梯是否能够使用,能不能承载重物,看看使用说明; 安全性方面: 看这部电梯有没有产品安全标识,验证在使用过程中是否能够保证安全使用; 易用性方面:看看这部电梯操作是否都能正常,按键能不能操作,门能否能打开; 界面方面 :先看看电梯外观是否完好无损,有没有破坏的地方,或者设计不合理的地方; 兼容性方面 :看看这样的电梯安装在不同地区的楼层是都都能正常使用,在不同的温度,人员重量下是否正常使用; 性能测试方面:看看电梯的控制主板是否正常,是否需要等很长时间; 压力测试方面 :实验用此电梯的极限重量的物品放在电梯里面,看电梯是否会报警; 可靠性方面:长时间使用这部电梯看看电梯正常工作的最长时间是多少。
十一、测试人员在软件开发过程中的任务是什么?
答:1、寻找Bug; 2、避免软件开发过程中的缺陷; 3、衡量软件的品质; 4、关注用户的需求。 总的目标是:确保软件的质量。
十二、请分别说明黑盒测试和白盒测试的优点和缺点
答:
黑盒测试的优点有:●比较简单,不需要了解程序内部的代码及实现; ●与软件的内部实现无关; ●从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题; ●基于软件开发文档,所以也能知道软件实现了文档中的哪些功能; ●在做软件自动化测试时较为方便。
黑盒测试的缺点有:●不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%; ●自动化测试的复用性较低。
白盒测试的优点有:●帮助软件测试人员增大代码的覆盖率,提高代码的质量,发现代码中隐藏的问题。
白盒测试的缺点有:●程序运行会有很多不同的路径,不可能测试所有的运行路径; ●测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可能会漏掉一些功能需求; 系统庞大时,测试开销会非常大。
十三、测试计划文档的内容应该包括什么?
答:包含了产品概述、测试策略、测试方法、测试区域、测试配置、测试周期、测试资源、测试交流、风险分析等内容。借助软件测试计划,参与测试的项目成员,尤其是测试管理人员,可以明确测试任务和测试方法,保持测试实施过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各种变更。
十四、 测试计划文档中哪些是最重要的?
答:测试计划和测试详细规格、测试用例之间是战略和战术的关系,测试计划主要从宏观上规划测试活动的范围、方法和资源配置,而测试详细规格、测试用例是完成测试任务的具体战术。所以其中最重要的是测试测试策略和测试方法(最好是能先评审)。
十五、黑盒测试的测试用例常见设计方法都有哪些?
答:划分等价类,边界值分析法,错误猜测法,因果图方法,正交表分析法,场景分析方法,状态图法,大纲法
十六、介绍一下什么是划分等价类的方法
答:等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情况:有效等价类和无效等价类.
十七、介绍一下什么是边界值分析法
答:边界值分析方法是对等价类划分方法的补充。 测试工作经验告诉我,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误。使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出等价类的边界,就是应着重测试的边界情况。应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。
十八、介绍一下什么是错误猜测法
答:基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法. 错误推测方法的基本思想: 列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例. 例如, 在单元测试时曾列出的许多在模块中常见的错误. 以前产品测试中曾经发现的错误等, 这些就是经验的总结. 还有, 输入数据和输出数据为0的情况. 输入表格为空格或输入表格只有一行. 这些都是容易发生错误的情况. 可选择这些情况下的例子作为测试用例.
十九、介绍一下什么是因果图方法
答:前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系, 相互组合等. 考虑输入条件之间的相互组合,可能会产生一些新的情况. 但要检查输入条件的组合不是一件容易的事情, 即使把所有输入条件划分成等价类,他们之间的组合情况也相当多. 因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例. 这就需要利用因果图(逻辑模型). 因果图方法最终生成的就是判定表. 它适合于检查程序输入条件的各种组合情况.
二十、介绍一下什么是正交表分析法
答: 有时候,可能因为大量的参数的组合而引起测试用例数量上的激增,同时,这些测试用例并没有明显的优先级上的差距,而测试人员又无法完成这么多数量的测试,就可以通过正交表来进行缩减一些用例,从而达到尽量少的用例覆盖尽量大的范围的可能性。
二十一、介绍一下什么是场景分析方法
答:指根据用户场景来模拟用户的操作步骤,这个比较类似因果图,但是可能执行的深度和可行性更好。
二十二、介绍一下什么是状态图法
答:通过输入条件和系统需求说明得到被测系统的所有状态,通过输入条件和状态得出输出条件;通过输入条件、输出条件和状态得出被测系统的测试用例。 #介绍一下什么是大纲法# 大纲法是一种着眼于需求的方法,为了列出各种测试条件,就将需求转换为大纲的形式。大纲表示为树状结构,在根和每个叶子结点之间存在唯一的路径。大纲中的每条路径定义了一个特定的输入条件集合,用于定义测试用例。树中叶子的数目或大纲中的路径给出了测试所有功能所需测试用例的大致数量。
二十四、问:给你一个网站,你如何测试?
答:首先,查找需求说明、网站设计等相关文档,分析测试需求。 制定测试计划,确定测试范围和测试策略,一般包括以下几个部分:功能性测试;界面测试;性能测试;数据库测试; 安全性测试;兼容性测试**设计测试用例:功能性测试可以包括,但不限于以下几个方面:链接测试。链接是否正确跳转,是否存在空页面和无效页面,是否有不正确的出错信息返回。 界面测试可以包括但不限于一下几个方面:页面是否风格统一,美观 - 页面布局是否合理,重点内容和热点内容是否突出? - 对于必须但未安装的控件,是否提供自动下载并安装的功能 性能测试一般从以下两个方面考虑:压力测试;负载测试;强度测试 数据库测试要具体决定是否需要开展。数据库一般需要考虑连结性,对数据的存取操作,数据内容的验证等方面。 安全性测试: 是否存在溢出错误,导致系统崩溃或者权限泄露 - 相关开发语言的常见安全性问题检查,例如SQL注入等 - 如果需要高级的安全性测试,确定获得专业安全公司的帮助,外包测试,或者获取支持 **兼容性测试,根据需求说明的内容,确定支持的平台组合: 浏览器的兼容性; - 操作系统的兼容性; 软件平台的兼容性; 开展测试,并记录缺陷。合理的安排调整测试进度,提前获取测试所需的资源,建立管理体系(例如,需求变更、风险、配置、测试文档、缺陷报告、人力资源等内容)。 定期评审,对测试进行评估和总结,调整测试的内容。
二十五、简述什么是静态测试
答:静态测试是不运行程序本身而寻找程序代码中可能存在的错误或评估程序代码的过程。
二十六、 简述什么是动态测试
答:动态测试是实际运行被测程序,输入相应的测试实例,检查运行结果与预期结果的差异,判定执行结果是否符合要求,从而检验程序的正确性、可靠性和有效性,并分析系统运行效率和健壮性等性能。
二十七、简述什么是黑盒测试
答:黑盒测试一般用来确认软件功能的正确性和可操作性,目的是检测软件的各个功能是否能得以实现,把被测试的程序当作一个黑盒,不考虑其内部结构,在知道该程序的输入和输出之间的关系或程序功能的情况下,依靠软件规格说明书来确定测试用例和推断测试结果的正确性。
二十八、简述什么是白盒测试
答:白盒测试根据软件内部的逻辑结构分析来进行测试,是基于代码的测试,测试人员通过阅读程序代码或者通过使用开发工具中的单步调试来判断软件的质量,一般黑盒测试由项目经理在程序员开发中来实现。
二十九、 简述什么是α测试
答:α测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试,Alpha测试不能由程序员或测试员完成。
三十、 简述什么是β测试
答:β测试是软件的多个用户在一个或多个用户的实际使用环境下进行的测试。开发者通常不在测试现场,Beta测试不能由程序员或测试员完成。
三十一、如何测试一个纸杯?
答:(钢笔,桌子,椅子都行,主要看考虑的角度是否全面,分析的是否合理) 参考答案: 功能度:用水杯装水看漏不漏;水能不能被喝到 安全性:杯子有没有毒或细菌 可靠性:杯子从不同高度落下的损坏程度 可移植性:杯子在不同的地方、温度等环境下是否都可以正常使用 兼容性:杯子是否能够容纳果汁、白水、酒精、汽油等 易用性:杯子是否烫手、是否有防滑措施、是否方便饮用 用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述 疲劳测试:将杯子盛上水(案例一)放24小时检查泄漏时间和情况;盛上汽油(案例二)放24小时检查泄漏时间和情况等 压力测试:用根针并在针上面不断加重量,看压强多大时会穿透
三十二、你自认为自己的优势在哪里?
答:该面试也没有固定不变的答案,但可参考以下几点,并结合自身特点: 有韧性、有耐心、做事有条理性、喜欢面对挑战、有信心做好每一件事情、较强的沟通能力、从以前的经理处都得到了很好的评价表明我做的很好!
三十三、简述你在以前的工作中做过哪些事情,比较熟悉什么参考
答案如下: 我过去的主要工作是系统测试和自动化测试。 在系统测试中,主要是对BOSS系统的业务逻辑功能,以及软交换系统的Class 5特性进行测试。 性能测试中,主要是进行的压力测试,在各个不同数量请求的情况下,获取系统响应时间以及系统资源消耗情况。自动化测试主要是通过自己写脚本以及一些第三方工具的结合来测试软交换的特性测试。 在测试中,我感觉对用户需求的完全准确的理解非常重要。 另外,就是对BUG的管理,要以需求为依据,并不是所有BUG均需要修改。 测试工作需要耐心和细致,因为在新版本中,虽然多数原来发现的BUG得到了修复,但原来正确的功能也可能变得不正确。因此要注重迭代测试和回归测试。
三十四、假设有一个文本框要求输入10个字符的邮政编码,对于该文本框应该怎样划分等价类?
答:特殊字符,如10个*或¥;英文字母,如ABCDefghik;小于十个字符,
如123;大于十个字符,如11111111111;数字和其他混合,如123AAAAAAA;空字符;保留字符 #
三十五、什么是回归测试?
答:回归测试: (regression testing): 回归测试有两类:用例回归和错误回归;用例回归是过一段时间以后再回头对以前使用过的用例在重新进行测试,看看会重新发现问题。错误回归,就是在新版本中,对以前版本中出现并修复的缺陷进行再次验证,并以缺陷为核心,对相关修改的部分进行测试的方法。
三十六、 LoadRunner分为哪三个模块?
答:请简述各模块的主要功能。 Virtual User Generator:用于录制脚步 Mercury LoadRunner Controller:用于创建、运行和监控场景 Mercury LoadRunner Analysis:用于分析测试结果
三十七、性能测试的流程?
答:
1、测试需求分析
2、测试计划制定与评审
3、测试用例设计与开发
4、测试执行与监控
5、分析测试结果
6、编写性能测试报告
7、测试经验总结
三十八、数据库里主键、外键的作用
答:主键:是表中的唯一标示键。 作用:保证实体的完整性;加快数据库的操作速度;增加新的表记录时,数据库会自动检索新记录的主键值,不允许该值与其他表中记录的主键重复;数据库会按主键值的顺序显示记录,如果没有设定主键,则按输入的顺序显示记录。 外键:是主键的从属,表示了两个表之间的联系。
作用:使用外键可以避免冗余。
数据库索引的优点与不足索引的优点: 1、通过创建唯一性的索引,可以保证表中数据的唯一性; 2、加速数据的检索速度; 3、加快表与表之间的连接; 4、在使用分组与排序数据检索时,可以显著检索分组与排序的时间; 5、在查询的过程中使用优化隐藏器,提供系统性能。
缺点: 1、创建索引需要时间,且随着数据量的增加而增加; 2、索引需要占用物理空间; 3、当对表中数据进行修改时,索引也要动态维护,降低了数据的维护速度。
最后: 为了回馈铁杆粉丝们,我给大家整理了完整的软件测试视频学习教程,朋友们如果需要可以自行免费领取 【保证100%免费】
全套资料获取方式:
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。