【纯⼲货】2020最新100道软件测试⾯试题+答案纯⼲货!!(⼀)
【纯⼲货】花费了整整3天,整理出来的全⽹最实⽤软件测试⾯试⼤全,⼀共30道题⽬+答案的纯⼲货,希望⼤家多多⽀持,建议 点赞!!收藏!!长⽂警告,全⽂共12000+字,涵盖软件测试⾯试可能遇到的所有问题,希望对⼤家有帮助,不过⼤家最好不要硬背,实战⼤于理论。祝⼤家⾯试顺利!
⽬录
公务员考试科目都一样吗1、问:你在测试中发现了⼀个bug,但是开发经理认为这不是⼀个bug,你应该怎样解决?
⾸先,将问题提交到缺陷管理库⾥⾯进⾏备案。
然后,要获取判断的依据和标准:
根据需求说明书、产品说明、设计⽂档等,确认实际结果是否与计划有不⼀致的地⽅,提供缺陷是否确认的直接依据;
如果没有⽂档依据,可以根据类似软件的⼀般特性来说明是否存在不⼀致的地⽅,来确认是否是缺陷;
吉林省自考报名根据⽤户的⼀般使⽤习惯,来确认是否是缺陷;
与设计⼈员、开发⼈员和客户代表等相关⼈员探讨,确认是否是缺陷;
合理的论述,向测试经理说明⾃⼰的判断的理由,注意客观、严谨,不参杂个⼈情绪。
等待测试经理做出最终决定,如果仍然存在争议,可以通过公司政策所提供的渠道,向上级反映,并有上级做出决定。
2、问:给你⼀个⽹站,你如何测试?
⾸先,查需求说明、⽹站设计等相关⽂档,分析测试需求。
制定测试计划,确定测试范围和测试策略,⼀般包括以下⼏个部分:功能性测试;界⾯测试;性能测试;数据库测试;安全性测试;兼容性测试
设计测试⽤例:
广东省职称评审网上申报系统
功能性测试可以包括,但不限于以下⼏个⽅⾯:
链接测试。链接是否正确跳转,是否存在空页⾯和⽆效页⾯,是否有不正确的出错信息返回。
提交功能的测试。
多媒体元素是否可以正确加载和显⽰。
多语⾔⽀持是否能够正确显⽰选择的语⾔等。
界⾯测试可以包括但不限于⼀下⼏个⽅⾯:
页⾯是否风格统⼀,美观
页⾯布局是否合理,重点内容和热点内容是否突出
控件是否正常使⽤
对于必须但未安装的控件,是否提供⾃动下载并安装的功能
⽂字检查
性能测试⼀般从以下两个⽅⾯考虑:
压⼒测试;负载测试;强度测试
数据库测试要具体决定是否需要开展。数据库⼀般需要考虑连结性,对数据的存取操作,数据内容的验证等⽅⾯。
安全性测试:
基本的登录功能的检查
是否存在溢出错误,导致系统崩溃或者权限泄露
相关开发语⾔的常见安全性问题检查,例如SQL注⼊等
如果需要⾼级的安全性测试,确定获得专业安全公司的帮助,外包测试,或者获取⽀持
兼容性测试,根据需求说明的内容,确定⽀持的平台组合:
浏览器的兼容性;
操作系统的兼容性;
软件平台的兼容性;
数据库的兼容性
开展测试,并记录缺陷。合理的安排调整测试进度,提前获取测试所需的资源,建⽴管理体系(例如,需求变更、风险、配置、测试⽂档、缺陷报告、⼈⼒资源等内容)。
定期评审,对测试进⾏评估和总结,调整测试的内容。
3、在搜索引擎中输⼊汉字就可以解析到对应的域名,请问如何⽤LoadRunner进⾏测试。
建⽴测试计划,确定测试标准和测试范围
设计典型场景的测试⽤例,覆盖常⽤业务流程和不常⽤的业务流程等
根据测试⽤例,开发⾃动测试脚本和场景:
**录制测试脚本:**新建⼀个脚本(Web/HTML协议);点击录制按钮,在弹出的对话框的URL中输⼊”about:blank”;在打开的浏览器中进⾏正常操作流程后,结束录制;调试脚本并保存,可能要注意到字符集的关联。
**设置测试场景:**针对性能设置测试场景,主要判断在正常情况下,系统的平均事务响应时间是否达标;针对压⼒负载设置测试场景,主要判断在长时间处于满负荷或者超出系统承载能⼒的条件下,系统是否会崩溃;执⾏测试,获取测试结果,分析测试结果
4、问:⼀台客户端有三百个客户与三百个客户端有三百个客户对服务器施压,有什么区别?
300个⽤户在⼀个客户端上,会占⽤客户机更多的资源,⽽影响测试的结果。线程之间可能发⽣⼲扰,⽽产⽣⼀些异常。
300个⽤户在⼀个客户端上,需要更⼤的带宽。
IP地址的问题,可能需要使⽤IP Spoof来绕过服务器对于单⼀IP地址最⼤连接数的限制。
所有⽤户在⼀个客户端上,不必考虑分布式管理的问题;⽽⽤户分布在不同的客户端上,需要考虑使⽤控制器来整体调配不同客户机上的⽤户。同时,还需要给予相应的权限配置和防⽕墙设置。
5、试述软件的概念和特点?软件复⽤的含义?构件包括哪些?
软件是计算机系统中与硬件相互依存的另⼀部分,与系统操作有关的计算机、规程、规则,以及可能有的⽂件、⽂档及。
软件复⽤(SoftWare Reuse)是将已有软件的各种有关知识⽤于建⽴新的软件,以缩减软件开发和维护的花费。软件复⽤是提⾼软件⽣产⼒和质量的⼀种重要技术。早期的软件复⽤主要是代码级复⽤,被复⽤的知识专指程序,后来扩⼤到包括领域知识、开发经验、设计决定、、需求、设计、代码和⽂档等⼀切有关⽅⾯。
可以被复⽤的软件成分⼀般称作可复⽤构件
6、软件⽣存周期及其模型是什么?北京人才市场最新招聘信息
**软件⽣存周期(Software life cycle)**⼜称为软件⽣命期,⽣存期。是指从形成开发软件概念起,所开发的软件使⽤以后,知道失去使⽤价值消亡为⽌的整个过程。⼀般来说,整个⽣存周期包括计划(定义)、开发、运⾏(维护)三个时期,每个时期⼜划分为若⼲个阶段。每个阶段有明确的任务。
周期模型(典型的⼏种):
瀑布模型
快速原型模型:快速原型模型允许在阶段对软件的需求进⾏初步⽽⾮完全的分析和定义,快速设计开发出的原型,该原型向⽤户展⽰待开发软件的全部或部分功能和性能;⽤户对该原型进⾏测试评定,给出具体改进意见以丰富细化;开发⼈员据此对软件进⾏修改完善,直⾄⽤户满意认可之后,进⾏软
件的完整实现及测试、维护。
迭代模型:迭代包括产⽣产品发布(稳定、可执⾏的产品版本)的全部开发活动和要使⽤该发布必需的所有其他外围元素。在某种程度上,开发迭代是⼀次完整地经过所有⼯作流程的过程:需求分析、设计、实施和测试⼯作流程。实质上,它类似⼩型的瀑布式项⽬。
RUP认为,所有的阶段都可以细分为迭代。每⼀次的迭代都会产⽣⼀个可以发布的产品,这个产品是最终产品的⼀个⼦集。
⽣命周期阶段:
消防证报名入口
软件计划与可⾏性分析
需求分析
软件设计
编码
软件测试
运⾏与维护
7、什么是软件测试?软件测试的⽬的与原则
在规定的条件下对程序进⾏操作,以发现程序错误,衡量软件质量,并对其是否能满⾜设计要求进⾏评估的过程。
软件测试的⽬的:
测试是程序的执⾏过程,⽬的在于发现错误
⼀个成功的测试⽤例在于发现⾄今未发现的错误
2022河北学考成绩查询
⼀个成功的测试是发现了⾄今未发现的错误的测试
确保产品完成了它所承诺或公布的功能,并且⽤户可以访问到的功能都有明确的书⾯说明。
确保产品满⾜性能和效率的要求
确保产品是健壮的和适应⽤户环境的
软件测试的原则:
测试⽤例中⼀个必须部分是对预期输出或接过进⾏定义
程序员应避免测试⾃⼰编写的程序
编写软件的组织不应当测试⾃⼰编写的软件
应当彻底检查每个测试的执⾏结果
测试⽤例的编写不仅应当根据有效和预料到的输⼊情况,⽽且也应当根据⽆效和未预料到的输⼊情况
检擦程序是否“未做其应该做的”仅是测试的⼀半,测试的另⼀半是检查程序是否“做了其不应该做的”
应避免测试⽤例⽤后即弃,除⾮软件本⾝就是个⼀次性的软件
计划测试⼯作时不应默许假定不会发现错误
程序某部分存在更多错误的可能性,与该部分已经发现错误的数量成正⽐
软件测试是⼀项极富创造性,极具智⼒的挑战性的⼯作
8、软件配置管理的作⽤?软件配置包括什么?
配置管理(Software Configuration Management,SCM)是⼀种标识、组织和控制修改的技术。管理应⽤于整个。在软件建⽴时变更是不可避免的,⽽变更加剧了项⽬中者之间的混乱。SCM活动的⽬标就是为了标识变更、控制变更、确保变更正确实现并向其他有关⼈员变更。从某种⾓度讲,SCM是⼀种标识、组织和控制修改的技术,⽬的是使错误降为最⼩并最有效地提⾼。
软件配置包括如下内容:配置项识别、⼯作空间管理、版本控制、变更控制、状态报告、配置审计
9、什么是软件质量?
概括地说,软件质量就是“软件与明确的和隐含的定义的需求相⼀致的程度”。具体地说,软件质量是软件符合明确叙述的功能和性能需求、⽂档中明确描述的开发标准、以及所有专业开发的软件都应具有的隐含特征的程度。 影响软件质量的主要因素,这些因素是从管理⾓度对软件质量的度量。可划分为三组,分别反应⽤户在使⽤软件产品时的三种观点。正确性、、效率、完整性、可⽤性、风险(产品运⾏);可理解性、可维修性、灵活性、(产品修改);可移植性、可再⽤性、互运⾏性(产品转移)。
10、⽬前主要的测试⽤例设计⽅法是什么?
⽩盒测试:逻辑覆盖、循环覆盖、基本路径覆盖
⿊盒测试:边界值分析法、等价类划分、错误猜测法、因果图法、状态图法、测试⼤纲法、随机测试、场景法
11、软件的安全性应从哪⼏个⽅⾯去测试?
软件安全性测试包括程序、数据库安全性测试。根据系统安全指标不同测试策略也不同。
⽤户认证安全的测试要考虑问题: 明确区分系统中不同⽤户权限 、系统中会不会出现⽤户冲突 、系统会不会因⽤户的权限的改变造成混乱 、⽤户登陆密码是否是可见、可复制 、是否可以通过绝对途径登陆系统(拷贝⽤户登陆后的链接直接进⼊系统)、⽤户退出系统后是否删除了所有鉴权标记,是否可以使⽤后退键⽽不通过输⼊⼝令进⼊系统 、系统⽹络安全的测试要考虑问题 、测试采取的防护措施是否正确装配好,有关系统的补丁是否打上 、模拟⾮授权攻击,看防护系统是否坚固 、采⽤成熟的⽹络漏洞检查⼯具检查系统相关漏洞(即⽤最专业的⿊客攻击⼯具攻击试⼀下,现在最常⽤的是 NBSI 系列和 IPhacker IP ) 、采⽤各种⽊马检查⼯具检查系统⽊马情况 、采⽤各种防外挂⼯具检查系统各组程序的外挂漏洞
数据库安全考虑问题: 系统数据是否机密(⽐如对银⾏系统,这⼀点就特别重要,⼀般的⽹站就没有太⾼要求)、系统数据的完整性(我刚刚结束的企业实名核查服务系统中就曾存在数据的不完整,对于这个系统的功能实现有了障碍) 、系统数据可管理性 、系统数据的独⽴性 、系统数据可备份和恢
复能⼒(数据备份是否完整,可否恢复,恢复是否可以完整)
12、什么是测试⽤例? 什么是测试脚本两者的关系是什么?
为实施测试⽽向被测试系统提供的输⼊数据、操作或各种环境设置以及期望结果的⼀个特定的集合。
测试脚本是为了进⾏⾃动化测试⽽编写的脚本。
测试脚本的编写必须对应相应的测试⽤例
13、简述什么是静态测试、动态测试、⿊盒测试、⽩盒测试、α测试β测试
静态测试是不运⾏程序本⾝⽽寻程序代码中可能存在的错误或评估程序代码的过程。
动态测试是实际运⾏被测程序,输⼊相应的测试实例,检查运⾏结果与预期结果的差异,判定执⾏结果是否符合要求,从⽽检验程序的正确性、可靠性和有效性,并分析系统运⾏效率和健壮性等性能。
⿊盒测试⼀般⽤来确认软件功能的正确性和可操作性,⽬的是检测软件的各个功能是否能得以实现,把被测试的程序当作⼀个⿊盒,不考虑其内部结构,在知道该程序的输⼊和输出之间的关系或程序功能的情况下,依靠软件规格说明书来确定测试⽤例和推断测试结果的正确性。
⽩盒测试根据软件内部的逻辑结构分析来进⾏测试,是基于代码的测试,测试⼈员通过阅读程序代码或者通过使⽤开发⼯具中的单步调试来判断软件的质量,⼀般⿊盒测试由项⽬经理在程序员开发中来实现。
α测试是由⼀个⽤户在开发环境下进⾏的测试,也可以是公司内部的⽤户在模拟实际操作环境下进⾏的受控测试,Alpha测试不能由程序员或测试员完成。
β测试是软件的多个⽤户在⼀个或多个⽤户的实际使⽤环境下进⾏的测试。开发者通常不在测试现场,Beta测试不能由程序员或测试员完成。
14、软件质量保证体系是什么?国家标准中与质量保证管理相关的⼏个标准是什么?他们的编号和全称是什么?
SQA由⼀套软件⼯程过程和⽅法组成,以保证(软件的)质量。SQA贯穿整个软件开发过程,(它)应包括需求⽂档评审、代码控制、代码评审、变更管理、配置管理、版本管理和软件测试。
保证(SQA-Software Quality Assurance)是建⽴⼀套有计划,有系统的⽅法,来向管理层保证拟定出的标准、步骤、实践和⽅法能够正确地被所有项⽬所采⽤。软件质量保证的⽬的是使对于管理⼈员来说是可见的。它通过对软件产品和活动进⾏评审和审计来验证软件是合乎标准的。软件质量保证组在项⽬开始时就⼀起参与建⽴计划、标准和过程。这些将使软件项⽬满⾜机构⽅针的要求。
## 15、软件产品质量特性是什么?
功能性:适应性、准确性、互操作性、依从性、安全性。
可靠性:成熟性、容错性、易恢复性。
可使⽤性:易理解性、易学习性、易操作性。
效率:时间特性、资源特性。
可维护性:易分析性、易变更性、稳定性、易测试性。
可移植性: 适应性、易安装性、遵循性、易替换性
## 16、软件测试的策略是什么?
软件测试策略:在⼀定的软件测试标准、测试规范的指导下,依据测试项⽬的特定环境约束⽽规定的软件测试的原则、⽅式、⽅法的集合。
17、软件测试分为⼏个阶? 各阶段的测试策略和要求是什么?
和开发过程相对应,测试过程会依次经历单元测试、集成测试、系统测试、验收测试四个主要阶段:
单元测试:单元测试是针对软件设计的最⼩单位––程序模块甚⾄代码段进⾏正确性检验的测试⼯作,通常由开发⼈员进⾏。
集成测试:集成测试是将模块按照设计要求组装起来进⾏测试,主要⽬的是发现与接⼝有关的问题。由于在产品提交到测试部门前,产品开发⼩组都要进⾏联合调试,因此在⼤部分企业中集成测试是由开发⼈员来完成的。
系统测试:系统测试是在集成测试通过后进⾏的,⽬的是充分运⾏系统,验证各⼦系统是否都能正常⼯作并完成设计的要求。它主要由测试部门进⾏,是测试部门最⼤最重要的⼀个测试,对产品的质量有重⼤的影响。
验收测试:验收测试以需求阶段的《需求规格说明书》为验收标准,测试时要求模拟实际⽤户的运⾏环境。对于实际项⽬可以和客户共同进⾏,对于产品来说就是最后⼀次的系统测试。测试内容为对功能模块的全⾯测试,尤其要进⾏⽂档测试。
单元测试测试策略:
⾃顶向下的单元测试策略:⽐孤⽴单元测试的成本⾼很多,不是单元测试的⼀个好的选择。