百度测试工程师面经分析

一面(基础)

1. 写代码(从数组中找出两个相加等于n的下标)

 

2.测试三边能不能组成三角形(考测试思惟全面性和逻辑是否清晰)

等价划分类
 

  三角形测试用例类别linux

输入条件web

有效等价类算法

无效等价类数组

是不是三角形浏览器

(A>0)   (1)安全

(B>0)   (2)服务器

(C>0)   (3)网络

(A+B>C)   (4)session

(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的区别)

一、int是基本数据类型,integer是int的封装类,是一个对象,用一个引用指向这个对象

二、初始化时int能够直接赋值,integer须要new一个对象

三、integer是一个类,是int的扩展,定义了不少转换方法

四、int和Integer均可以表示某一个数值,int和Integer不可以互用,他们是两种不一样的数据类型; 

7.网络(搜索百度主页的全过程,整个过程的物理设备,网路协议,数据流向;session)

一、输入的百度域名经过DNS服务器找到其IP地址

二、浏览器经过已知的IP地址向百度服务器发送Get请求

三、服务器给浏览器响应一个301永久重定向响应

四、浏览器跟踪重定向地址

四、服务器处理请求,显示百度主页内容

物理设备:DNS服务器、web服务器

网络协议:DNS、http、tcp、ip、ARP

 

8.怎么与人合做的

我以为与人合做最主要的就是配合二字,其次就是注意沟通,及时交流,有不一样的意见,一块儿讨论,找出折中或者最佳方案,避免因沟通不当形成重大后果。我认为合做的过程当中切忌一家独大,要时刻提醒本身以大局为重,团结力量大。

9.怎么证实本身学习能力强

学习能力强固然是好事,学习能力弱其实也没啥,虽然我我的比较相信天赋的做用,但我也相信一句话,这个世界上大多数人努力的程度之低还轮不到拼天赋。我相信我在努力方面不输大多数人。

10.做为测试的优点

一、测试行业前景好,工做缺口相对较大

二、工做压力小,比较适合女生

三、越老越值钱,经验比较重要

四、要与各种人员沟通,能够提高本身的软实力

11.怎么考虑工做地点离家远的问题

12.有什么要问的

一、您认为贵公司留住您的地方在哪一点

二面(处理能力+思惟全面性)

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)),也会抛异常,但会多产生一个对象

5.平时有什么爱好

6.对测试的了解

7.作测试的优点

8.在一个环形商场里有不少商家,商家的钱数事先知道。让你去抢钱,而且保证不抢连续两家,怎么保证抢钱数目最多

9.让你去实习,能够去么

10.有什么要问的

 

三面(总监+宏观把控)

1.自我介绍一下

2.你怎么学的测试

3.简单介绍一下项目

4.对工做地点是怎么选择的

5.对测试的一些想法

6.优缺点

7.有什么要问的  

相关文章
相关标签/搜索