我么调研了很多松勤学员面试经历,总结出了在面试中大概率会出现以下问题。

 

    Monkey怎么用的?
 

①. 可以通过monkey命令来进行使用,基本命令是adb shell monkey -p 包名 -s 序列值 count(次数),其他参数根据情况需要设置,在monkey执行同时,用adb logcat命令抓取手机端日志

②. 如果有代码能力或者有技术人员支持,可以将monkey设计成一个可视化工具,方便测试人员执行,提高测试效率.

 

    monkey测试,你们一次执行多久?
 
一次执行8-10小时,伪随机事件在35万-26万次左右

 

    monkey你们是通过app命令执行的吗?具体用到什么参数?
 
一般可以通过命令执行,我们项目用的参数有:-p包名 -s 序列值 --throttle 延迟时间 ----ignore-crashes --ignore-craash --ignore-security-exceptions --ignore-native-crashes
--monitor-native-crashes count等参数

 

    如何判断这个monkey是成功还是失败呢?
 
根据monkey命令执行结束后的结果是否是monkey finished ,在这个基础上在查看手机的当前表现是否有死机等情况(如果monkey完成后,放置过程中发生问题也是需要解决的)
 
    怎么用postman测试验证码这些?
 
①. 可以使用万能验证码进行绕过
②. 在测试阶段取消验证码功能
③. 获取验证码相关功能获取其session和cookie,在进行提交测试

 

    弱网测试你们怎么测的,你们限速多少,怎么确定这就是弱网呢?弱网测试你们要哪些指标,怎么确定是否通过?
 
①.用手机数据流量进行弱网测试,在功能测试中,设置2G/3G/4G这样的情况进行测试
②.用FIddler工具进行弱网专项测试,根据其默认值的情况进行设置延迟时间的参数,然后来进行从测试,我之前是在300/150的基础上1000位一个阶级增加,直到我们项目定义的8000为止,在这个过程中,查看手机上的功能是否可以正常使用或者在加载数据时能否加载不全的情况,在长时间加载中是有相应的提示信息或者出现异常情况

 

    用selenium怎么登录一个页面?怎么判断是否成功?
 
将能判断事务是否成功的部分设置为断言,比如说,成功登录之后的URL跳转了。那么判断URL有没有发生改变,改变了就成功登录了。或者是登录失败了页面提示登录失败,那么可以执行登录之后检查页面是否有登录失败的提示,有就登录失败。

 

    会搭建禅道吗?禅道出现乱码怎么办?
 

先导出csv格式的文件,用word打开,选择unicode(utf-8),保存,再用excel打开上一步被word文档保存的bug文件,可以看到内容正常显示。也可以将用excel打开的文件保存为*.xls文件。

 

    fiddler进行弱网测试的原理是什么?
 
通过fiddler来模拟限速,因为fiddler本来就是个代理,它提供了客户端请求前和服务器响应前的回调接口,我们可以在这些接口里 面自定义一些逻辑。Fiddler的模拟限速正是在客户端请求前来自定义限速的逻辑,此逻辑是通过延迟发送数据或接收的数据的时间来限制网络的下载速度和 上传速度,从而达到限速的效果。

 

    Jmeter一个线程占多少内存?
 
刚开始同学问我的时候,我也是一脸懵,我也get不到面试官想要问啥,这个问题我也不是很清楚,大家在面试过程中也会遇到这样你get不到点的问题。遇到这样不合理的问题,学会把问题把握在自己手上,比如可以反问。请问你问的是jmeter的内存占用机制吗?jemte默认分配的运行内存是256M,这数值是可以在jmeter配置文件里面修改的,修改的最大值和我们自身电脑的内存大小有关,如果想进行高并发的压测,一般会在cmd里采用命令行执行jmxx文件,减少jemter GUI图形界面的资源占用率。也可以配置jemter文件,用master-slave的方式进行分布式压测

 

    Jmeter做性能测试并发数多少?
 
视情况而定,比如一些小众产品,不怎么做性能,用户量不是很大,所以性能都够用。根据需求一点点加并发数,可以把并发数设置在   200 500 800 1000 的去尝试递增,然后极限给客户参考

 

    Jmeter怎么录制,怎么过滤,线程组有哪些内容?
 
jmeter可以使用第三方的录制工具(badboy)或者使用自身的软件的录制功能进行,jmeter录制原理:是通过代理http服务器抓取用户操作网站过程中的链接。
 
jmeter可以在设置http代理服务器的时候,过滤掉不需要的css、gif等内容。
 
线程组包括:线程组名、注释、线程组中的用户数量、线程组在多少时间发送完请求、循环次数、时间调度

 

    Jmeter对于未知协议如何进行测试?
 
第一反应就是未知协议指的是啥,所以如果我回答的话应该是怎么测试,选择常用,通用的协议先进行测试,然后走正常的jmeter 测试,无论是接口测试还是性能测试都一样

 

    fiddler的使用,抓包方面,用fiddler怎么修改请求参数?
 
fiddler主要用来做app抓包使用,做弱网测试。现在fiddler客户端做好各项配置,端口设置为8888,然后在手机上设置代理,就可以抓包了。抓包可以看到服务器返回的值(弱网),还能够修改传入参数,传出的参数(接口),模拟网络延时,去构造不同场景。

 

PC端。1.打开fiddler,默认配置,按F12直接开始抓包,或者在顶部
file-> capture craffic开始抓包(注意,在抓包之前需要确认右下角的状态是all processes)
2.运行浏览器,输入需要抓包的网址与页面>>>运行
3.返回fiddler,按F12或file-> capture craffic结束抓包
4.在右边框点击filters进行过滤,输入网址后点击actions运行
   抓包结束

 

修改参数:Rules中设置automatic breakpoints中的before requests,然后在raw中进行参数的修改,再执行Run to Comepletion,查看参数修改后的结果。

 

    fiddler设置弱网测试的值还记得吗?
 
上行3000ms,下行1500ms。在这块测试的时候,我们通常会可以3-5秒这样的进度去递增.直至达到项目最长延迟时间.在这个过程如果发现问题,我们会进行多次测试,确认是弱网带来的问题,然后进行提交,协助bug修改。

 

    你这个项目什么情况下,会用到fiddler去抓包呢?
 
一般在操作系统的时候都会打开抓包软件,如果过程中遇到问题了可以及时去查看分析。
 
    postman和Jmeter做接口测试区别
 
    Fiddler如何设置断点调试
 
    fiddler怎么设置代理,怎么分析里面参数,请求头包含什么?
 
    平时在工作中怎么测试购物车这个模块?写5条购物车的测试点
 

 

最后4道  必考题 

暂时不公布答案哦~~

童鞋们可以先想一想

把答案写在 留言区 

如果你需要标准答案

请关注微信公众号

松勤软件测试

后台回复:答案

 

 
 可能会涉及到的工具 
 

测试管理工具

 

 

ALM

 

禅道

 

单元测试工具

 

 

JUnit

 

TestNG

 

接口测试工具

 

 

Jmeter

 

Postman

 

自动化测试工具

 

 

Selenium

 

Appium

 

性能测试工具

 

 

LoadRunner