2023年7月29日发(作者:)
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、什么是软件测试?软件测试的目的与原则?
在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。
软件测试的目的:
测试是程序的执行过程,目的在于发现错误
一个成功的测试用例在于发现至今未发现的错误
一个成功的测试是发现了至今未发现的错误的测试
确保产品完成了它所承诺或公布的功能,并且用户可以访问到的功能都有明确的书面说明。
确保产品满足性能和效率的要求
确保产品是健壮的和适应用户环境的
软件测试的原则:
测试用例中一个必须部分是对预期输出或接过进行定义
程序员应避免测试自己编写的程序
编写软件的组织不应当测试自己编写的软件 应当彻底检查每个测试的执行结果
测试用例的编写不仅应当根据有效和预料到的输入情况,而且也应当根据无效和未预料到的输入情况
检擦程序是否“未做其应该做的”仅是测试的一半,测试的另一半是检查程序是否“做了其不应该做的”
应避免测试用例用后即弃,除非软件本身就是个一次性的软件
计划测试工作时不应默许假定不会发现错误
程序某部分存在更多错误的可能性,与该部分已经发现错误的数量成正比
软件测试是一项极富创造性,极具智力的挑战性的工作
8、软件配置管理的作用?软件配置包括什么?
软件配置管理(Software Configuration Management,SCM)是一种标识、组织和控制修改的技术。软件配置管理应用于整个软件工程过程。在软件建立时变更是不可避免的,而变更加剧了项目中软件开发者之间的混乱。SCM活动的目标就是为了标识变更、控制变更、确保变更正确实现并向其他有关人员报告变更。从某种角度讲,SCM是一种标识、组织和控制修改的技术,目的是使错误降为最小并最有效地提高生产效率。
软件配置包括如下内容:配置项识别、工作空间管理、版本控制、变更控制、状态报告、配置审计
9、什么是软件质量?
概括地说,软件质量就是“软件与明确的和隐含的定义的需求相一致的程度”。具体地说,软件质量是软件符合明确叙述的功能和性能需求、文档中明确描述的开发标准、以及所有专业开发的软件都应具有的隐含特征的程度。 影响软件质量的主要因素,这些因素是从管理角度对软件质量的度量。可划分为三组,分别反应用户在使用软件产品时的三种观点。正确性、健壮性、效率、完整性、可用性、风险(产品运行);可理解性、可维修性、灵活性、可测试性(产品修改);可移植性、可再用性、互运行性(产品转移)。
10、目前主要的测试用例设计方法是什么?
白盒测试:逻辑覆盖、循环覆盖、基本路径覆盖
黑盒测试:边界值分析法、等价类划分、错误猜测法、因果图法、状态图法、测试大纲法、随机测试、场景法 1、讲述在你的测试工作中遇到印象最深的一个BUG?
答:我在XX项目中新增XX信息的时候,遇到过这样一个印象深刻的BUG,我填写了相关信息,但是有一栏是空的,点击取消,反而显示新增成功。之后我们定位这个BUG,发现是前端调用接口错误,后端新增接口没有做验证,便返回新增成功。
之后我们前端重新调用新增接口,后端重新修改新增接口的验证逻辑,便修复成功。
解析:当我们遇到这样的问题的时候,我们要去揣摩面试官想要的答案。
(1)需要回答出BUG
(2)定位出这个BUG问题
(3)怎么修复这个BUG(加分项)
2、测试用例设计工作的关键是什么?
答:深刻了解到项目的需求,制定出有效的策略去应对每一个模块,每一个功能点。
解析:要找到测试用例的核心,就是对项目需求的全覆盖(接近全覆盖)
3、windows10复制粘贴的测试用例编写?
答:测试从多方面角度去考虑:
界面测试(UI,文字、图标、大小等问题)、功能测试(复制粘贴是否有效等)、性能(时间、大小等)、兼容(windows版本,架构等)、安全性(文件不见等)等
解析:直接扩展答案内容,从多方面去考虑测试用例编写。
4、你对测试最大的兴趣在哪里?为什么?
答:我对未知的事物充满好奇心和挑战性。
我觉得在找到一个bug会让我兴奋,能够完善一个项目,让项目不出问题也是我很开心的一个地方。
解析:多从性格入手,可以自由的增加自己的看法,多往好的方向去说。
5、开发说这个不是bug的时候该怎么解决?
答:首先要把自己检验出来的证据提交给开发工程师,和开发工程师积极沟通,遇到不能复现的bug,就要自己在去利用抓包、截图等方式去存证。如果和开发工程师沟通无果后,要让产品经理来确定是否属于bug。 解析:
1、和开发沟通
2、留存好bug的理由
3、如果无法解决,很多事情去找产品经理去解决
图片
6、从什么时候介入测试最好?
答:从项目需求阶段就开始介入最好,当我们介入测试越早,那么遇到的问题越少,我们在需求阶段就开始编写计划,方案,然后根据计划,方案进行测试用例编写,越能及时找出bug。
解析:越早越好,并编写相对应的文档。
7、说下你测试之后的发展规划?
答:1、我要把功能测试这块熟悉好,然后不断的提升自己,能够独立负责一个项目的整体功能测试。
2、学会自动化测试,能够对项目进行自动化测试,节省回归测试的时间。
3、学会带领一个测试团队,分工,能够解决一个大型项目的测试工作…等等
解析:重点是思路要清晰,要清晰自己需要学什么,每一个阶段要去学什么东西。
8、为什么进入测试行业?
答:因为测试行业是一个新兴行业,现在测试在互联网行业的比重越来越高,并且它需要很多样的技能,需要专心,耐心,与人沟通的技巧,也需要编程能力,相对开发要更加全面性。
解析:按自己的想法去打,前面说这个行业前景,后面就说自己的性格或者这个测试所需要的能力很多样。
9、怎么才能够全面的测试到每一个点?
答:在项目伊始阶段,就要开始进行测试工作,测试计划一定要多方位,全面性的去考虑测试的策略,测试用例的编写等。
解析:及早介入项目测试,文档要编写的全面。
10、你都用什么测试方法?
答:根据模块细分的功能不同,使用不同的测试方法,大方面是黑盒和白盒,然后我们黑盒测试的时候,设计测试用例根据不同的功能使用不同的设计方法(等价类划分、正交等),要保证测试的覆盖性。
解析:大部分测试都是在用黑盒测试,那么一般就要包括测试用例,而测试用例里几大设计方法要注意。
11、测试用例通常包括哪些内容?
答:用例编号、用例名称、优先级、测试步骤、测试数据、预期结果、最终结果等。
解析:这个根据公司项目来定义,一般只需要有这几块就足够。
12、如何定位前后端BUG?
答:可以通过以下几种方式
1、简单的去看请求响应定位
2、通过查询日志,如果日志无内容,说明前端问题,反之后端。
3、抓包工具去定位接口,查找数据。
解析:面试官问这个问题主要是看你怎么解决一个问题的思路,实际工作中很少会遇到这种情况,并且遇到也是很好去定位的。
13、账号注册成功,但是登录的时候失败,怎么定位bug?
答: 调用登录的接口,看输入正确的账号是否成功,如果成功,登录接口无问题。那么注册接口,可能注册数据未存入数据库,或者注册接口验证等等都有问题。提交bug即可。
解析:简单的去测试一个功能点怎么定位bug,讲出自己的思路即可。
14、软件质量是什么?
答:软件产品可以符合用户的需求,功能实现即可。
解析:满足用户的需求、功能是最重要的。
15、测试用例的设计方法?
答:分为黑盒测试和白盒测试
黑盒测试:等价类划分法、边界值分析法、 因果图分析法、正交实验法、判定表法、场景法、功能图法、错误推测法
白盒测试:逻辑覆盖、循环覆盖、基本路径覆盖
解析:正常答出这些点即可。
16、所有的bug都能够修复吗、都需要修复吗? 答:理论上所有的bug都是能够去进行修复的,但是有一些bug并不需要修复。有一些细微,并不影响程序运行,功能的bug可以不修复,先把大型bug,重要的bug去进行修复,然后最后再进行修复。
解析:重点是先修复大bug,再修复小bug。
17、软件的完全测试有可能吗?
答:不可能的。测试工作主要是找出bug,但是不能保证没有bug,因为在测试过程中,完全测试需要的测试数据量特别大,人力物力是要消耗特别多的。所以我们会见到不同的软件有内测,公测,需要很多人来完成这个测试。
解析:做什么事都没有完美的,测试也是。
18、测试过程中发现需求文档不完善怎么处理?
答:找产品经理及时沟通,要找到不完善的地方,然后准确的提交给产品经理,这样才有说服力。
解析:核心就是标注出不完善的地方。
19、开发修复bug后,如果保证不影响其他功能?
答:追加场景法设计测试用例,对一些功能进行场景测试,业务测试。
解析:用多种方法进行追加测试。
20、什么时候功能测试?
答:从测试介入一开始,就可以进行功能测试了,功能测试是软件测试的核心,保证在一段时间内运行所有的功能,并找出bug。
解析:功能测试是整个软件测试的核心,最早进行介入。
发布者:admin,转转请注明出处:http://www.yc00.com/web/1690560185a368953.html
评论列表(0条)