软件测试面试整理
测试理论篇
1.说下黑盒测试的方法,并选取一个(不能选边界值,等价类)具体讲个实例
黑盒测试的方法:等价类,边界值,判定表,因果图,正交法,场景分析法,状态迁移法,错误推测法
比如说判定表:在地铁站的自动充值中,可以充值得金额:30,50,100,放入50,充值30,退出20,或者说放入50,充值100,则充值不成功
2.测试报告包含哪些内容?
数据统计,遗留的bug情况,测试风险,测试对象,评估,测试结果
3.假如你发现一个bug,项目经理跟开发跟其他人都不认为是bug,你该怎么做?
我的话,我会再测试一遍这个bug模块,如果确定是bug的话,那么继续跟开发人员沟通,详细说明这个bug,如果开发人员依旧不认可,就找测试经理或者项目经理说明这个bug的严重性,来进行风险评估。
4.怎么去判别你设计的用例都覆盖所有的功能点?
要参考需求规格说明书和开发设计文本
测试用例编写就是根据用户需求
5.端口
Mysql:3306 oracle:1521 sql-server:1433 Apache:80 tomact:8080
6.网络协议有哪些,状态码有哪些
http协议:100 正在请求
200 正在响应
302 重定向
404 客户端错误
500 服务端错误
7.测试方案包括了哪些内容?
测试方案的话从技术的角度对整个测试活动进行的规划,其中描述了被测对象的测试特性,测试的方法,测试环境的规划,测试工具的设计与选择以及测试用例的设计方法
8.测试用例都是包含哪些?
用例编号,模块,功能,测试标题,重要级别,预置条件,测试输入,操作步骤,结果
我们采用的黑盒测试用例设计方法,需要测试覆盖到尽可能多的需求,用例编写通俗易懂,有清晰操作步骤和预期结果,要可执行
9.跟我说说SVN的优缺点
SVN的话相对于以前的软件首先有一个性能的提高,SVN不管文件是文本还是二进制类型,在内部都是以二进制差异比较算法来表示文件的更新部分,这也使创建分支,打标签,合并等操作可以非常快的完成。其次是对目录的组织管理更加方便,SVN不光对文件做版本
跟踪,也会对目录做版本跟踪。最后保证提交操作的完整性,要么全部成功,要么全部无效,保证了原子性。缺点的话,在我看来并没有什么缺点,可能也就在滚回操作方面,损坏的版本还是会存在数据库里。
10. 如果上线之前有个偶现bug,还会上线吗?
首先要看这个bug的严重程度,如果不影响主体功能,一般性的bug的话,会先上线,之后再进行修复,如果是严重bug的话,则会推迟上线时间,进行加班进行紧急修复
11. 测试流程?
首先要需求分析,用Xmind思维导图工具写出测试功能和测试点,编写测试计划,编写测试用例(用思维导图上的测试点,还要考虑到错误推测发等)并请相关的项目人员进行评审查漏补缺,执行测试用例,提交BUG,并跟踪管理,回归测试,编写测试报告和进行测试总结。
12.你测试主要考虑那些方面
测试主要考虑它的业务功能是否能实现,所有的功能是否已经稳定,功能和性能方面能否满足客户的需求,测试用例是否尽可能多的覆盖到所有的测试点上,测试用例的执行有没有达到100%,致命和严重的BUG的修复有没有达到100%,一般和提示性的BUG修复有没有达到80%以上
13.怎么使用gt工具
选择需要被调试的应用之后选择需要显示的指标,如cpu,pss等,然后启动该应用,在参数页面中设置好关注的参数,点击开始录制就可以回到需要测试的应用中去操作了,测试完成后可停止录制,保存日志到手机,这些日志可以作为excel表导出到电脑。
14.单元测试,集成测试,系统测试的区别
在单元测试活动中,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试,测试重点是系统的模块,包括子程序的正确性验证等。
集成测试在单元测试的基础上,将所有模块按照设计要求,组装成为子系统或系统,进行集成测试。
测试重点是模块间的衔接以及参数的传递等。
系统测试是将经过测试的子系统装配成一个完整系统来测试。它是检验系统是否确实能提供系统方案说明书中指定功能的有效方法。测试重点是整个系统的运行以及与其他软件的兼容性
15.你了解HTTPTCP协议吗?了解到什么程度?
了解过一些,TCP协议的话是网络上数据通信的一种协议,如果没有这个协议,你就在TCP/IP网络上什么也做不了。HTTP协议的话是超文本传输协议,是TCP/IP协议里面包含的应用层协议,没有这个协议会不能浏览网页。
16.什么情况下用过HTTP协议?
服务器响应错误时
17.中断测试是怎样的?
中断测试是指在工作中被其他的任务或者意外事件等情况终止推出,像一般的来电
18.你一般发现bug后会怎样处理(需要答到协助开发定位问题)
先会简单定位bug
1,是否是环境问题
兼容性问题,具体功能,是否服务器问题
2,是否是测试数据问题
3,代码的问题(查看日志)
在禅道中提交bug
Bug的要素:标题,项目名称,版本,环境,bug类型,bug级别,前置条件,重现步骤,期望结果,实际结果,问题定位,附件(问题截图,日志文件)
19.公司的bug是怎样管理的
我们公司是用禅道去管理bug的,我们测试人员提交bug给项目经理审核和分配,项目经理再把bug分配给开发人员,然后开发人员修复完成以后,会转给我们测试人员进行复测,待复测完成以后会对bug进行一个关闭或者返回
20.用的抓包工具有哪些,在什么情况下用的比较多?具体举个例子?
我们以前一般都是fiddler工具,在接口测试中用的比较多,比如说发送一个支付请求,fiddler会请求一个接口地址,接口那边再返回状态,提取状态,根据返回的状态查看是否跟开发给的接口文档一致
21.你对osi模型熟悉吗,有哪几层,tcp,ip分别属于哪一层,tcp/ip协议熟悉吗,是怎么样的?
了解过,应该有七层模型,tcp是传输层,ip是网络层。这个协议我不熟
22.你的测试数据从哪里获得的?怎么获得的,假如不告诉你,你怎么处理?
我们的测试数据一般都是导入的,有时也会自己造测试数据,对于已经上线的项目,可以从生产环境中导入测试数据
23.软件质量属性有哪些,都分别怎么考虑的?
功能性,可靠性,易用性,维护性,可移植性,效率
24.你了解网络和硬件吗
硬件的话就是一些设备,例如机箱,主板,硬盘之类,网络的话是通信技术与计算机技术相结合的产物。计算机网络的话是按照网络协议,通过介质将独立的计算机相互连接的集合。
25.你了解前端吗
了解一点,就是展示后台数据的一个平台,包括数据,图片等信息,前端通常是用HTMI语言进行开发
(后续不断更新......)