一面(基础)
1. 写代码(从数组中找出两个相加等于n的下标)
2.测试三边能不能组成三角形(考测试思维全面性和逻辑是否清晰)
三角形测试用例类别 |
||
输入条件 |
有效等价类 |
无效等价类 |
是否是三角形 |
(A>0) (1) (B>0) (2) (C>0) (3) (A+B>C) (4) (B+C>A) (5) (C+A>B) (6) |
(A<=0) (7) (B<=0) (8) (C<=0) (9) (A+B<=C) (10) (B+C<=A) (11) (C+A<=B) (12) |
3.为什么报测试
开发工资比测试高,又是一个富于挑战和创造性的职业,一般人可能都会选择从事开发,但是我很清楚我要的是什么我足够了解我自己,从14年接触测试行业开始,从没有变过。
我感觉测试前景比较好,现在互联网进入一个瓶颈,用户就是上帝,数据无价,所以用户体验就显得尤为重要,而测试是最近几年才在我国兴起,缺口比较大,发展空间也比较大。
4.常见的测试类型,性能测试指标
测试类型:功能测试、性能测试、安全测试、接口测试、GUI测试、可靠性测试、恢复性测试、容量测试、兼容性测试
性能测试指标:
资源指标
CPU使用率:指用户进程与系统进程消耗的CPU时间百分比,长时间情况下,一般可接受上限不超过85%。
内存利用率:内存利用率=(1-空闲内存/总内存大小)*100%,一般至少有10%可用内存,内存使用率可接受上限为85%。
磁盘I/O: 磁盘主要用于存取数据,因此当说到IO操作的时候,就会存在两种相对应的操作,存数据的时候对应的是写IO操作,取数据的时候对应的是是读IO操作,一般使用% Disk Time(磁盘用于读写操作所占用的时间百分比)度量磁盘读写性能。
网络带宽:一般使用计数器Bytes Total/sec来度量,Bytes Total/sec表示为发送和接收字节的速率,包括帧字符在内。判断网络连接速度是否是瓶颈,可以用该计数器的值和目前网络的带宽比较。
系统指标:
并发用户数:某一物理时刻同时向系统提交请求的用户数。
在线用户数:某段时间内访问系统的用户数,这些用户并不一定同时向系统提交请求。
平均响应时间:系统处理事务的响应时间的平均值。事务的响应时间是从客户端提交访问请求到客户端接收到服务器响应所消耗的时间。对于系统快速响应类页面,一般响应时间为3秒左右。
事务成功率:性能测试中,定义事务用于度量一个或者多个业务流程的性能指标,如用户登录、保存订单、提交订单操作均可定义为事务
5.SQL(多表查询,左连接和右连接的区别)
左连接是以左边表中的数据为基准,若左表有数据右表没有数据,则显示左表中的数据,右表中的数据为空。
右连接是以右边表中的数据为基准,若左边中没数据,右表中有数据,则显示右表中的数据,左表返回空值。
两个表:
A(id,name)
数据:(1,张三)(2,李四)(3,王五)
B(id,name)
数据:(1,学生)(2,老师)(4,校长)
左连接结果:
select A.*,B.* from A left join B on A.id=B.id;
1 张三 1 学生
2 李四 2 老师
3 王五 NULL NULL
右链接结果:
select A.*,B.* from A right join B on A.id=B.id;
1 张三 1 学生
2 李四 2 老师
NULL NULL 4 校长
6.linux(查看一个文档,显示出文档的最后五条数据)
tail -n 文件名 查看文件的最后n行
head -n 文件名 查看文件的开头n行
7.JAVA(int和Integer的区别)
1、int是基本数据类型,integer是int的封装类,是一个对象,用一个引用指向这个对象
2、初始化时int可以直接赋值,integer需要new一个对象
3、integer是一个类,是int的扩展,定义了很多转换方法
4、int和Integer都可以表示某一个数值,int和Integer不能够互用,他们是两种不同的数据类型;
7.网络(搜索百度主页的全过程,整个过程的物理设备,网路协议,数据流向;session)
1、输入的百度域名通过DNS服务器找到其IP地址
2、浏览器通过已知的IP地址向百度服务器发送Get请求
3、服务器给浏览器响应一个301永久重定向响应
4、浏览器跟踪重定向地址
4、服务器处理请求,显示百度主页内容
物理设备:DNS服务器、web服务器
网络协议:DNS、http、tcp、ip、ARP
8.怎么与人合作的
我觉得与人合作最主要的就是配合二字,其次就是注意沟通,及时交流,有不同的意见,一起讨论,找出折中或者最佳方案,避免因沟通不当造成重大后果。我认为合作的过程中切忌一家独大,要时刻提醒自己以大局为重,团结力量大。
9.怎么证明自己学习能力强
学习能力强当然是好事,学习能力弱其实也没啥,虽然我个人比较相信天赋的作用,但我也相信一句话,这个世界上大多数人努力的程度之低还轮不到拼天赋。我相信我在努力方面不输大多数人。
10.作为测试的优势
1、测试行业前景好,工作缺口相对较大
2、工作压力小,比较适合女生
3、越老越值钱,经验比较重要
4、要与各类人员沟通,可以提升自己的软实力
11.怎么考虑工作地点离家远的问题
12.有什么要问的
1、您认为贵公司留住您的地方在哪一点
二面(处理能力+思维全面性)
1.自我介绍
2.项目的具体算法
3.怎么判断链表有环,并优化(要求写出时间复杂度最优的算法)
使用快慢指针法,例如快指针一次两步,慢指针一次一步,两个指针如果相遇,说明链表中是有环存在的
4.怎么测试string to int程序(要说的很全面,一直问“还有吗”)
String -> int
s="12345";
int i;
第一种方法:i=Integer.parseInt(s);
第二种方法:i=Integer.valueOf(s).intValue();
第一种方法:i=Integer.parseInt(s);//直接使用静态方法,不会产生多余的对象,但会抛出异常第二种方法:i=Integer.valueOf(s).intValue();//Integer.valueOf(s) 相当于 new Integer(Integer.parseInt(s)),也会抛异常,但会多产生一个对象