赞
踩
今天给大家分享一份顺丰同城的测试开发一面面试真题。老规矩,当你看到这份面试题的时候,先不要着急去看答案,你可以想想假如你在面试现场,你会怎么回答?这个思考的过程其实也是很重要的。
全文7000字干货,如果对你有帮助,希望能点个赞,这样我才有继续更新下去的动力。
主要概括个人优势➕简短,2~3分钟内。自我介绍的框架:
1、职业背景:过往在什么公司工作过,做过什么工作岗位,担任了什么样的一个角色。
2、个人优势/技能:擅长做什么?核心优势是什么?
3、成功项目:在过去的工作中,你有没有做过一些有亮点的项目,这个项目是什么,项目的数结果如何(最好有数据表现)。
4、如果没有亮点项目的话,就在个人优势这里,稍微拓展一些,自己掌握了什么技术。比如会自动化的环境搭建,自动化项目的部署,掌握接口、UI自动化测试的技术等。
综上所述,过去掌握的技能和经验,可以帮助快速上手项目的测试工作,所以和咱们公司的这个测试岗还是比较匹配的。
一定记住分点去说,分别负责1234哪些部分,表达要有条理。
先想清楚,什么会影响测试质量?之前转载一篇京东测试大佬写的文章,里面就有提到过:实际影响质量的因素有很多,一般包括
知道影响因素后,就可以从每个影响的因素去回想,你做了哪些针对性的措施来保证测试质量。以上,是第一种回答思路。
第二种回答思路:可以从测试流程的思路来作答,这样不容易遗漏。
可以从测试前、测试中、测试后3个大的部分来说,当然面试的时候不需要把所有的测试流程全部讲完,只需要挑出你在哪一部分,做了什么来保证测试质量就可以了。
每家公司的测试流程不一样,但是一般会包括以下流程:
一、测试前:1、产品需求评审;2、技术方案评审;3、用例评审;4、用例设计;
二、测试中:接口测试、冒烟测试、功能/UI测试、系统测试、回归测试、代码覆盖度测试、兼容性测试、产品验收测试、线上测试、自动化脚本是否需要每次上线前跑一遍等。
三、测试后:线上问题复盘。
第一,自己先定一个优先级,是否是立即要修改的bug,修改这个bug是否会延误上线时间等。
第二,如果优先级高,和开发沟通,解释bug的影响范围。
第三,协作:帮助开发查找定位bug,减轻开发的压力,会更愿意去修改。
第一,自己重新复现一下,确定是bug。
第二,看bug报告描述是不是有问题,是不是自己描述不准确。
第三,获取判断的依据和标准:比如用需求文档和开发当面进行沟通,注意客观、严谨,不参杂个人情绪。
第四,如果仍然存在争议,需要产品经理介入,一起讨论。
第五,以上方法都行不通的情况下,向上反馈,由上级做出决定。
(1)查看内存空间
使用“free”命令可以查看服务器的内存空间,选项“-m”表示以MB(兆字节)的数据存储单位进行显示。执行结果如下所示:
在以上输出结果中,Mem表示系统的物理内存,total表示内存的总大小(995M),used表示已经使用的空间(168M),free表示可用空间(827M)。关于其他内容读者可参考Linux帮助手册进行学习,这里就不再详细解释。
(2)查看磁盘空间
使用“df”命令可以查看服务器的磁盘空间,选项“-lh”表示利用方便阅读的数据存储单位显示本地文件系统。执行结果如下所示:
在以上输出结果中,Filesystem是文件系统,Size表示该分区的总大小,Used表示已经使用的空间,Avail表示可用空间,Use%表示已经使用的百分比,Mounted on表示挂载路径。可以看出,系统共分为3个文件系统,其中“/dev/mapper/VolGroup-lv_root”是挂载到根目录的文件系统,总大小为8.3G,已经使用的空间为646M。通过上述命令可以看出,最小安装后的CentOS占用的内存和磁盘空间都非常小。用户可以根据自己的需要来手动安装软件和配置系统,避免因为大量预装软件而导致内存、磁盘等硬件资源的浪费。
优点:
①减少了数据检索的时间
②保证了数据的唯一性
③表与表之前的参照完整性
④减少了在分组、排序的检索时间
缺点:
①创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加。
②除了数据表占数据空间之外,每一个索引还要占一定的物理空间。
③当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就降低了数据的维护速度。
查找本学期没有选课的学生:
SELECT s.sname, s.sid FROM student s join sc on s.sid=sc.sid WHERE sc.cid IS NULL;
查找挂科的学生:
SELECT s.sname, s.sid, sc.score FROM student s join sc on s.sid=sc.sid WHERE sc.score<60;
第一步,确认是否是bug(看是否满足预期)。
第二步,保存bug记录,视频或截图。
第三步,找到稳定的复现步骤,以及找到复现问题的最短路径。复现路径越短,说明问题的影响面越大,更应该受到重视。
通过以上几个步骤,就可以清楚的去描述问题现象。
确认问题之后,接下来开始定位bug:
首先需要定位,这个bug是前端问题还是后端问题,一般是由浅入深,先从前端着手。通过抓包看是不是数据的问题,假如接口数据没问题,就是前端问题。假如接口数据有问题,大概率就是后端问题。后端问题看状态码,查看后端日志去看代码有没有异常,检查数据库、缓存、配置是否有异常。通过以上步骤,基本都能找到bug原因。
1 1xx消息
2 2xx成功
3 3xx重定向
4 4xx客户端错误
5 5xx服务器错误
下面是常见的 HTTP 状态码:
200 - 请求成功
301 - 资源(网页等)被永久转移到其它URL
404 - 请求的资源(网页等)不存在
500 - 内部服务器错误
前端bug特点 1, 界面相关 2,布局相关 3,兼容性相关
后端bug特点 1,业务逻辑相关 2,性能相关 3,数据相关 4,安全性相关
1、经验法
软件测试人员应不断精进自己的技能,负责的项目多了,自然对功能的实现过程有了解,也就明白如何分类bug了。例如:网页上的某个图片的分辨率不对,如果我们了解实现过程,可以想到一般情况下,是根据某个地址去服务器取图片的,数据库一般只保存地址,那么图片能正确显示,就说明后端的基本功能是满足需求的。如果具体图片分辨率有误,最可能的原因是前端显示过程出了差错。
2、查日志
当我们发现一个bug,并不确定这个bug属于前端还是后端,可以查看后端服务的日志,复现bug时,查看日志中有没有相关信息。基本可以认为,如果日志没有输出,很可能这个功能并没有与后端交互,也就不存在后端的问题。反之,如果日志有输出,可以进一步查看有无错误日志信息,进一步分析。
3、查接口
这种方法常用于查看是后端返回给前端的数据有误,还是前端显示有误。大多数浏览器都有自带的接口查看工具,如Chrome,FireFox等都可以通过F12开启抓包,在NetWork中可以看到当前页面发送的每个http请求。我们需要对比通过后端接口拿到的数据和前端显示的数据,来确认问题出在哪里。如果数据错了,页面显示是错的,也是正常的,先从后端入手去解决。
还可以分析控制台中js是否有错误,network中状态码是否有问题,如果是500等说明服务端有问题。
比如登录页面,输入账号和密码点击登录,结果没有跳转也没有反应。
可以打开控制台,看是否有js错误,如果有就是前端问题,没有且有正常post请求再看network状态码,如果是404有可能是前端参数写错或者后台接口改了,前后端都可以提,500就是后台出了问题。
中间件是介于操作系统和在其上运行的应用程序之间的软件。中间件实质上充当隐藏转换层,实现了分布式应用程序的通信和数据管理。它有时被称为管道,因为它将两个应用程序连接在一起,使数据和数据库可在“管道”间轻松传递。
通过中间件,用户可执行很多请求,例如在 Web 浏览器上提交表单,或者允许 Web 服务器基于用户的配置文件返回动态网页。
常见的中间件示例包括数据库中间件、应用程序服务器中间件、面向消息的中间件、Web 中间件和事务处理监视器。每个程序通常都会提供消息传递服务,让不同的应用程序可使用简单对象访问协议 (SOAP)、Web 服务、表述性状态转移 (REST) 和 JavaScript 对象表示法 (JSON) 等消息传递框架进行通信。
虽然所有中间件都执行通信功能,但公司选用的类型将取决于要使用的服务以及需要传达的信息类型。这可包括安全身份认证、事务管理、消息队列、应用程序服务器、Web 服务器和目录。
中间件还可用于实时发生的操作的分布式处理,而不是来回发送数据。
最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走
这些资料,对于想自学【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助…….
加入下方我的交流群免费获取!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。