谈关于最近软件测试的面试

上一篇 / 下一篇  2012-08-27 10:03:21 / 个人分类:测试经验

51Testing软件测试网AQNH)gO9e#z

  前段时间有新的产品需要招人,安排和参加了好几次面试,下面就谈谈具体的面试问题,在面试他人的同时也面试自己。

(\??!O+s0

w%}1g5DLx0  面试问题是参与面试同事各自设计的,我也不清楚其他同事的题目,就谈谈自己设计的其中2道题。

)F.Jz(~k*L051Testing软件测试网OT,~a o6vr4y9R

  过去面试总是会有如何测试Google首页,测试杯子,测试电话之类的,有偷懒的嫌疑,这次来个具体的,第一个题目如何测试下面这个表:

?3ar-B+ut0Fu0

51Testing软件测试网1CFR Se E!eC

  一、第一个问题设计测试用例

-Q8l7@(EJ(X0

  面试里得到的很多回答就是一条条罗列,例如:51Testing软件测试网w MK+S3tQ

  1、界面显示是否正常,各种浏览器、分辨率,文字是否显示正常51Testing软件测试网 N_Emq

  2、这个数据是否和数据库一致51Testing软件测试网`Y:zp4\-Z8k

  3、promote按钮是否正常使用51Testing软件测试网@n-DHP.Q#w1B3xX

  4、上一页下一页按钮是否正常51Testing软件测试网;T c ~q1tO

  5、列表标题是否支持排序,排序功能是否正常(很奇怪,这个提到的人不多,类似的下拉列表的Autocomplete也很少人提到)51Testing软件测试网:ViVBM+h.u[

  6、......

vg'w)}0y6?%|'pK0

  比较少的听到按照测试类型来设计的,例如界面测试用例、功能测试用例、大数据测试用例等等,51Testing软件测试网r:V/W]N

  也没有听到按照正常用例和异常用例来罗列。51Testing软件测试网G8u*i1F}{

  二、如果你来设计这个表,还会做哪些完善51Testing软件测试网-fu)F[ne ~

  1、可能有些人注意到,这个结果总共有99523个,提供的翻页只有前进后退,是否加个go to page的功能

e Q&p6B)y5wLwv0

  2、貌似我们以前见过列表翻页还有提供第一页和最后一页,那是否也加上51Testing软件测试网!u-tY#@5_*c,tV

  3、结果很多,是不是加个搜索(其实这个数据是搜索得到的)51Testing软件测试网iK8I [MOatU

  4、这个列表一页只显示10个结果,是否可以多显示些,是否加个每页显示数目51Testing软件测试网^*Al0M,A;GD{

  ...51Testing软件测试网 bRk2DvE

  问到第二个问题,有些面试人员就迷惑了,经常听到的是“我们都是根据需求测试的”,那我问,你们对用户体验关注么,

/Z? IU(~1m0

  得到很多回答是“设计好的,我们只是测试下”,被动式的测试居多。51Testing软件测试网8V;C;S0pl0o:\

  三、如果你来实现这个表会怎么做51Testing软件测试网t.b Ojtn(h+|&Z

  1、最简单的,拉个控件,之后连接到数据库,搞个dataset/datatable数据绑定读取数据显示51Testing软件测试网R7IJ;J{s~1i^"Z

  2、直接连接到数据库如果数据量大时,前台等待过久怎么办,哦,有AJAX,异步获取数据51Testing软件测试网 v N uw)h~h8wE

  3、还有没有更好的,预加载,生成10页的结果放在服务端,这个技术在网购网站首页的促销商品大量使用

_ E"C7^O{0

  这是一个优化的问题,可惜很多测试对于开发的设计实现没有任何的兴趣或是根本不去了解。51Testing软件测试网[U B:k/fENJ

  了解了下,有很多公司是不能看代码的,能看代码的也没有编辑的权限,把测试定位成开发的服务,但并没有充分利用测试可以帮助开发定位错误,51Testing软件测试网;B%R4x P SeD

  让开发更快的修复缺陷,更多的是选择让测试熟悉业务。

Q8gF+aLt!_(BT fk0

+yF'a{4T!}7\8Fq0  四、某位测试工程师自己写了个自动化脚本进行翻页,可是翻页到1万多结果的时候,浏览器崩溃了,你来研究下是什么原因

SHTPA"B\0

i |]'Fw_3bk0  这个问题很多人思索后放弃了,那么我提示说崩溃的时候,浏览器占用了2G的内存,极少有人提到查看日志51Testing软件测试网.K5Y \9M;kdf'c

51Testing软件测试网'~+k p!RSr/N

  1、使用自动化的时候,是否可以再写个脚本监控浏览器操作的资源使用情况

7T{x9~8qx051Testing软件测试网ZA e3nMq2a4g

  2、内部测试系统是否可以打开debug模式用来记录日志51Testing软件测试网,J%r[o G9S%z

(r;C5SdK0  3、是否可以查看开发代码,看看开发实现翻页部分的代码

"bc7jC0Z$o`0

(I3X k ZT0  4、和开发沟通,一起来排查错误

q ~ZTZOH7[051Testing软件测试网.tM(S7Y4J7f

  ...51Testing软件测试网Q1E{!wLd-e0n

8G*DfG.F,A5C'RB0  很失望,到这个问题很少得到满意的答复,测试的同学们在广度上有所突破外是否也注重下深度,我自己也逐渐意识到这些问题,刚好作为面试题目。

VZ9w"|Pq ^aM'K051Testing软件测试网6t3EJZPI

  相似的问题,如何测试下拉列表,有兴趣的同学可以练练手。

7pK tFm&W4\6n$f6P _051Testing软件测试网,mA0`~+g;wR1E5V

  另一题目是关于文件读写51Testing软件测试网NP[1a*P$?\

q/sJ] F{-M0  有一个文件,存放着地理信息,类似下面,想从里面取出IP地址用在其他地方,即如何从一个文件中取出IP地址存入另一个文件。51Testing软件测试网k@q~|*l

51Testing软件测试网ml*DQC,SJ0p

  1.0.0.0|apnic debogon project|null|7|0r||12|0|22581|4|0||
;U z+Pvm#lrb"a0  1.0.1.0|chinanet fujian province network|null|591|41||43|0|35075|4|0||51Testing软件测试网IS RW oE
  1.0.2.0|chinanet fujian province network|null|591|41||43|0|35075|4|0||51Testing软件测试网)LJ P;aod(S
  1.0.3.0|chinanet fujian province network|null|591|41||43|0|35075|4|0||51Testing软件测试网8l2Z ?9w$t&m
  1.0.4.0|level collins street|null|7|0r||12|0|3719|4|0||
5x]o#xf;o Bo-n x0  1.0.5.0|level collins street|null|7|0r||12|0|3719|4|0||
]*Y9tb'f0URL0  1.0.6.0|level collins street|null|7|0r||12|0|3719|4|0||
n&y&A%p`:p7GRI0  1.0.7.0|level collins street|null|7|0r||12|0|3719|4|0||51Testing软件测试网A1ahP8d!L t7wI
  1.0.8.0|chinanet guangdong province network|null|20|47||43|0|7392|4|0||51Testing软件测试网cBd5f`1AHQ:~7k
  1.0.9.0|chinanet guangdong province network|null|20|47||43|0|7392|4|0||51Testing软件测试网cV` V8f/lK I
  ...
51Testing软件测试网*X:Vm1o,M@9s$qI$B

(t$w\im~D6y!F0  这个第一步就很多人放弃了,理由基本上是“以前学校学过某某语言,后面工作就没写过代码”, 稍微好点的呢,“可以说下思路么”,也行,那说下思路吧。51Testing软件测试网q%l-Z?Ck+PU

/z%O^3c$?$nl0  少数人会想到使用awk命令直接在teminal运行,也有想到写个小脚本来读取写入。

!t/M(K Ug+d;tE*?051Testing软件测试网\#~OmJ2G

  应该说不管开发测试,很多都是计算机相关专业毕业的,我想在现行教育体制下,大学里至少都学过C语言吧,可是有些测试人选择测试职业后,

8kz7_+ymp/\0

QsNz;FAt0  直接把Coding的技能抛弃了,注意,是自己抛弃了,虽然在公司工作上不用编码,但是工作后呢,有没有自己写些东西。

B%CI$S5^z^4Z7l0

#E3k.^cJ3L`;] m'e%A8_0  好了,假设写了个小脚本,例如理想情况下第一竖线前都是IP地址,写个python脚本如下:51Testing软件测试网9y1s8k.v4A n`PJ%f

51Testing软件测试网hJ/X!Zh3~Hvx

51Testing软件测试网kh8f\[$o |G

#!/usr/bin/python2.451Testing软件测试网3B5Zmu#`0D6^
#
;yS\^E#[Rw0 
F3lRRh[?0import re
[[[$Mu0 
nI C"F]f0geofile=open('geo.csv','r')
_b L#?X4e(a&?0lines=geofile.readlines()
&{'^t H'xc-Xg0for line in lines:51Testing软件测试网IH{o4}~
    a=line.split('|')
"eg6Up6t#B~Y0    ipfile=open('ip.txt','a')
D8pc.U#yk(m+G0    print >> ipfile,a[0]51Testing软件测试网9](Q _ wE#^#C `#l.{
    geofile.close()51Testing软件测试网E$s,A~Hk#Y;k
ipfile.close()

:Mm`_ D#EB]0  接下来请对写的这个命令也好,脚本也好测试。

E Up9k9U{ gk051Testing软件测试网m q } ^;E0iNj"Fsa"x

  1、正常用例

fBg2V0~w051Testing软件测试网 P\!J7qQ7{9^ a

  2、异常用例51Testing软件测试网7o+}%~^ b(~"Ih

51Testing软件测试网u l%~cfAR!u${

  这个问题可以从2种角度入手,一种直接把它当作黑盒来测试,不知道里面的实现,提供不同的输入文件查看输出结果;另一种可以采用单元测试51Testing软件测试网@R,@KK5H)Hle\

%\K6Qu)X B'_W(B D@*DG0  可惜很多面试人纠结在文件的第一列是不是IP地址,需要判断。51Testing软件测试网2q}M;g2gbgt+?

;Y6u)Fz6I8VA_0  脚本写好了,也测试了,如果这个地理信息文件很大呢,具体点,这个是全球地理信息文件,超过2G,你写的这个脚本执行要很久哦。

!X5k+giIdY,_Q0

R3{:{?o#uCW yB0  这又是个优化问题,整个面试只有一位同学说可以采用分割文件的做法,先分割再合并,他也是提到使用awk命令的同学。51Testing软件测试网XL&zF n{#e

51Testing软件测试网4H Vd B G

  可惜没有听到使用多线程多进程的方式。

(Tj H*f!v051Testing软件测试网lgp,j3@l4s

  这次面试感慨颇多,面试的对象基本是工作2、3年的测试工程师,但对测试的认识普遍还是几年前的样子,面试要求也是一再降低,统计下来,9个候选人能选中一个。51Testing软件测试网/aB mF8z|u-K2D

AjR _0]0  虽然外面宣传的测试职业前途非常光明,不过在实际工作中,中小型企业测试人的地位普遍低于开发,除了几个大公司。

e#Xov5]!QQ051Testing软件测试网8iPby]7Q

  测试如果想要提高自己的地位,首先要提高自己的技能,不仅仅是在测试技术上,开发技术和对开发设计的理解也是需要提高的,这样才能获得和开发同等的交谈资格。

E U9j ]]$I0

TAG:

 

评分:0

我来说两句

Open Toolbar