一
1.公司的位置在哪,什么大厦在几层,坐什么交通工具去,老板叫什么,公司有几个人(上班一年多,要非常熟悉附近的环境)
车公庙泰然工贸园(东座)201栋七层 5号线-4号线(会展中心转车)-1号线 冯巨东 四五十个
2.为什么离职:(不能说上家公司不好,公司搬家,公司倒闭,经济不景气业务不好,裁员)
3.简单的介绍一下你的第一个项目:
4.你们的项目做多久,多久迭代一次(5个月,大概两个星期一个小版本,一个月一个大版本)
5.多少个测试,开发多少个,写了多少条测试用例(这个项目三个,开发十几个,三百多条)
6.发现了多少bug(100多个)
7.开发认为不是bug:(找产品确认,告诉产品这个bug会对用户造成什么影响)
8.有什么印象深刻的bug:
9.在工作中遇见了什么困哪,怎么解决的:
10.你们公司的测试流程规范吗(小公司,要规范的话是因为老大是大公司出来的)
11.你会写测试计划和测试报告吗(没写过,不过知道怎么写)
12.b/s c/s 测试方面有什么区别(安装、升级、卸载、兼容)
13.你们这个app的兼容性怎么做(234GWiFi网络,弱网,安卓版本,各手机厂商ui,分辨率)
14.app跟web有什么区别(app兼容性 性能 网络 web是浏览器兼容)
15.selenium为什么可以做自动化测试(selenium的原理)
16.linux怎么装oracle()
17.软件的六大特性(软件测试的六大要素:功能性,可靠性,易用性,效率性,可维护性,可移植性)
18.bug包含哪些要素(ID,标题,复现步骤,优先级,严重程度,附件,抄送人,指派人)
19.缺陷的状态:(New(新的),Assigned(已指派),Open(已打开),Fixed(已修复),Rejected(被拒绝),Postponed(延期),Closed(已关闭),Reopen(再次打开))
20.项目为什么要分层(方便管理)
21.子类怎么继承父类(在括号里的是父类)
22.火狐的浏览器名和浏览器驱动名字(firefox,geckodriver)
23.jmeter怎么做接口测试的(测试计划-线程组-http请求-聚合报告/察看结构树、HTTP信息头管理器、响应断言、JSON断言)
24.CMMI是什么(软件能力成熟度集成模型,一套专门针对软件产品的质量管理和质量保证标准)
25.Xpath / 和 // 有什么区别(/从头开始的绝对路径 //从祖辈开始的相对路径)
26.第三方平台怎么测试(测接口)
27.你这个接口request是怎么发图片的呢(file文件类型的数据)
28.你这个定位位置是怎么测试的呢(GPS,WiFi,4G)
29.Python跟appium的环境是什么搭建起来的,做app服务需要连接哪些参数
30.自动化的测试流程是什么样的()
31.你们公司产品上线的标准是什么()
32.你有没有用过别的bug管理工具(只用过禅道,不过这些工具都是类似的,学一下一个就会用)
33.性能测试你都是关注哪些指标(事务,响应时间,每秒事务数,吞吐量,点击率,并发用户数,资源利用率)
34.项目开发中,什么是集成(使各个功能集成在一起,或是把软件的各部分组合在一起)
35.jenkins是用来干嘛的,你是怎么去配置那个Jenkins发邮件的(发邮件的忘了,这个之前是在网上查怎么配的,配过一次,如果需要的话我可以再查一次,这个不难)
36.发邮件用的是什么协议,默认端口号(QQ邮箱SMTP协议,默认端口465)
37.对自己未来两年有什么规划
38.你有没有什么问题要问我的
39.你期望自己的薪水是多少,你觉得为什么自己值这么多(6.5~7)
40.你觉得我从哪些方面该录用你呢(了解公司业务+自己的能力=可以做到、可以做好)
二
1.说一下项目的测试流程
2.用例评审是怎么评审的,从哪方面来评审
3.你们公司有几个测试
4.你是负责什么模块的呢,那其他人负责什么模块呢
5.adb怎么找包名(找所有adb shell pm list package,找单个的话先adb logcat -c 然后adb logcat ActivityManager:I *:s)
6.那你自己熟悉哪些adb命令呢
7.adb monkey包含哪两个我们常见的参数(-p -v)
8.web自动化是怎么做呢
9.怎么样安装Python和selenium的环境呢
10.那app自动化是怎么部署的呢
11.loadrunner的参数化是什么意思(把数值参数化成变量,给变量设置一些数值)
12.写测试用例是用什么方法(等价类,边界值,正交表,因果图,错误推定法)
13.因果图用在哪个方面(输入和输出有很对组合的)
14.什么叫关键字驱动(自带或手动把脚本封装成关键字,robot的关键字驱动)
15.unittest用例的命名规则(test带头)
16.app安装卸载升级怎么测试的(覆盖安装,反复安装,强制卸载,强制升级)
17.软件的质量有哪些特性(软件测试的六大要素:功能性,可靠性,易用性,效率性,可维护性,可移植性)
18.对自己的职业规划
19.你觉得你今天的面试水平怎么样
三
1.测试的10大原则(尽早测试,28原理)
2.自动化测试完成了多少条用例
3.自动化用在哪里
4.怎么搭自动化
5.robotframework怎么安装的呢
6.b/s架构和c/s架构有什么区别
7.b/s架构的产品这么测(就是web)
8.o/s模型有哪七层
9.TCP是那一层,ip是那一层
10.三次握手和四次挥手是什么意思
11.app测试的环境搭建
12.如果要输入中文要怎么处理(在参数里加键盘)
13.jmeter断言需要什么东西
14.如果是post怎么搞
15.请求头填什么东西,为什么传这两个参数
16.接口测试你们写了多少条用例(100)
17.你们公司做什么业务(去外面承接项目,类似于项目外包)
18.吞吐量是什么,吞吐量高,点击率低是什么原因(单位时间内处理的客户端请求数量)
19.Loadrunner的事务是什么
20.LoadRunner用的是什么版本
21.你是想找功能测试还是自动化测试(说还是想做更多的功能测试,熟悉业务)
22.你觉得从哪些方面可以更好的保证软件的质量 (测试策略 用例质量 执行质量 缺陷质量 过程质量)
23.有没有什么问题想问我(测试规模,什么类型的项目,有没有人做自动化的项目呢)
24.你在深圳朋友多吗
25.你的朋友都是怎么评价你的呢
26.你对我们公司了解
27.如何做好软件测试(做好测试计划)
四
1.软件质量模型?(可靠性、可移植性、功能性、效率、易用性、可维护性)
2.怎么搭建web自动化环境?
(1.下载python安装并配置环境变量
2.pip install -U selenium安装selenium //selenium==3.4.1 指定版本安装
3.下载浏览器驱动,放到python目录下)
3.怎么搭建app自动化环境?
(1.安装python,JDK
2.安装appium测试框架
3.安装Android SDK
4.安装.net
5.连接真机)
4.模块-模块数据哪来-模块能干什么-模块数据到哪去(父模块-子模块,接口)
5.常用端口号?
(3306 mysql
1521 oracle
8080 tomcat
80 apache
5037 adb
22 ssh)
6.搭建app环境需要传的参数?
(desired_caps = {
'platformName': 'Android',//平台名:安卓或者iOS
'deviceName': '127.0.0.1:62001',//设备名:我们在adb devices看到的那个
'platformVersion': '23',// 平台版本:切换到Appium,看
'appPackage': 'com.tencent.news',//App包名回到cmd,刚才输入的aapt dump badging
'appActivity':'com.tencent.news.activity.SplashActivity',//进入App后的Activity(App专用语
'unicodeKeyboard':'true', //中文输入,unicode输入法
'resetKeyboard':true) //unicode测试结束后,重置输入法
driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", desired_caps))
7.fiddler和F12的区别?
(fiddler 可以看到历史记录
F12 页面刷新就没有记录,获取不了post)
8.get和post区别?
get 有历史记录,参数在url里,get可以添加书签,获取数据,有长度限制
post 没有历史记录,参数在data里,post不能添加书签,储存数据,没有长度限制
9.adb命令?
(adb start-server
adb devices
adb kill-server
adb install
adb connect 127.0.0.23:62001
adb logcat -c 清除日志
adb logcat ActivityManager:I *:s 连接手机,查看日志,可找包名
adb shell pm list package 找包名
adb shell monkey -p com.jingdong.app.mall -v 10000 (-p报名 -v次数))
10.元组和列表的区别?
(元组 不可变,遍历速度快
列表 可变)
11.离职原因?
(最近IT行业大量裁员,我就被裁掉了
公司搬家)
12.自动化的优缺点?
(优点:减少重复性的工作,提高效率
缺点:脚本维护,无法发现新bug,多适用于回归测试,不同项目复用率低)
13.mysql和oracle区别?
(mysql:支持少用户并发
oracle:支持高并发,大用户量
语法区别:
mysql:需要定义变量类型,查中间数据用limit
oracle:动态的数据库,不需要定义类型,查中间数据库用伪劣rownum)
14.在linux上安装mysql?
(1.yum安装mysql服务
yum install mysql mysql-server -y
2.创建跟随系统启动
chkconfig mysqld on
3.开启mysql
service mysqld start
4.修改mysql root密码
mysqladmin -u root password xxxxxx)
15.b/s、c/s测试方面的区别?
(c/s:安装、覆盖安装、更新、卸载、弱网
b/s:浏览器兼容性)
16.fiddler怎么抓app的包?
(1.fiddler抓包设置所有连接以及端口号8888
2.设置手机的wlan手动代理填写ip和端口)
17.项目和你上家公司不一样怎么开展?
(项目复杂程度高2周,低1周来熟悉项目)
18.性能指标?
(事务:端到端,一个完整的操作过程,比如一次登录、一次筛选条件查询,一次支付等
响应时间
TPS:指服务器在单位时间内(秒)可以处理的事务数量
吞吐量:吞吐量指的是单位时间内处理的客户端请求数量
点击率:是指每秒发送的HTTP请求的数量,点击率越大对server造成的压力就越大
并发用户数:并发数是指同时进行请求的客户的数量
资源利用率:资源利用率指的是对不同系统资源的使用程度)
19.性能测试流程?
(需求分析,哪些模块需要性能测试,指标是什么,编写性能测试计划和测试用例,录制脚本,编辑脚本,设置场景并运行,总结测试结果给开发)
20.什么样的产品适合做自动化测试?
(1.功能成熟(需求变动较小)
2.产品更新维护周期长
3.项目进度不太大
4.比较频繁的回归测试
5.软件开发比较规范,具有可测试性
6.脚本具有可复用性)
20.selenium切换框架?
(切入框架:swith_to.frame()
切出 :swith_to.default()
切换窗口:通过window_handle找到所有窗口的句柄赋给一个变量并返回列表,
再用swith_to.window()变量的下标切换窗口)
22.OSI,7层模型,意为开放式系统互联?
(应用层
网络服务与最终用户的一个接口。
协议有:HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP
表示层
数据的表示、安全、压缩。(在五层模型里面已经合并到了应用层)
格式有,JPEG、ASCll、DECOIC、加密格式等
会话层
建立、管理、终止会话。(在五层模型里面已经合并到了应用层)
对应主机进程,指本地主机与远程主机正在进行的会话
传输层
定义传输数据的协议端口号,以及流控和差错校验。
协议有:TCP UDP,数据包一旦离开网卡即进入网络传输层
网络层
进行逻辑地址寻址,实现不同网络之间的路径选择。
协议有:ICMP IGMP IP(IPV4 IPV6) ARP RARP
数据链路层
建立逻辑连接、进行硬件地址寻址、差错校验 [2] 等功能。(由底层网络定义协议 )
将比特组合成字节进而组合成帧,用MAC地址访问介质,错误发现但不能纠正。
物理层
建立、维护、断开物理连接。(由底层网络定义协议))
23.TCP/UDP的区别?
(1.TCP协议是有连接的,开始传输实际数据之前TCP的客户端和服务器端必须通过三次握手建立连接,会话结束之后也要结束连接。而UDP是无连接的。
2.TCP协议保证数据按序发送,按序到达,提供超时重传来保证可靠性,但是UDP不保证按序到达,甚至不保证到达,只是努力交付,即便是按序发送的序列,也不保证按序送到。
3.TCP有流量控制和拥塞控制,UDP没有,网络拥堵不会影响发送端的发送速率。
4.TCP是一对一的连接,而UDP则可以支持一对一,多对多,一对多的通信。
5.TCP面向的是字节流的服务,UDP面向的是报文的服务。)
24.三次握手?
(是指建立一个TCP连接时,需要客户端和服务器总共发送3个包)
24.四次挥手?
(TCP的连接的拆除需要发送四个包)
25.loadruuner三大组件?
(脚本录制、控制台、结果分析器)
26.robotframework安装?
(1.安装python
2.安装selenium
3.安装pip robotframework
4.pip robotframework-ride
5.pip robotframework-seleniumlibrary
6.安装wxpython图形界面库)
27.数据库备份?
(create table emp_20181220_bak as selecet * from emp //备份数据库
create table emp_test as select * from emp where 1=2 //备份表结构)
28.数据库查中间数据?
(Oracle语句如下:
select * from (select s.*,rownum r from student s) t where t.r>=10 and r.r<=20
Mysql语句如下:
select * from student limit 5,10)
29.app安装测试?
(1.正常安装
2.覆盖安装
3.回退安装
4.安装时内存不足
5.根据安装手册安装
6.安装过程中的关机、来电话、切后台
7.不同的系统、型号、分辨率安装
8.第三方安装)
30.app卸载测试?
(1.用自带卸载程序卸载,有没有残留
2.第三方卸载,有没有残留
3.卸载中取消,是否正常退出卸载,并能正常使用
4.卸载中意外情况,比如关机、来电、后台
5.卸载过程中重启设备,还能否正常使用)
31.app更新测试?
(1.更新提示
2.非强制更新,不更新仍可使用,下次启动提示更新
3.强制更新,不更新无法使用,下次启动提示更新
4.不卸载更新,是否能覆盖更新)
32.app测试和web测试的区别?
(更新:
web只需要更新服务器
app需要更新客户端
性能:
web页面只关注响应时间
app关心流量、卡顿、CPU、GPU、Memory
兼容性:
web倾向于系统和浏览器
app考虑操作系统、机型、分辨率、屏幕尺寸
app多一些专项测试:
健壮性:
异常场景、弱网,异常指中断、来电、短信、关机、重启,弱网包含弱网和网络切换 ,需要测试弱网所造成的用户体验,重点要考虑回退和刷新是否会造成二次提交。
安装、卸载、更新:
常规的安装、更新、卸载还要考虑到异常场景
操作界面:
手势,横竖屏切换,多点触控,事件触发区域等测试)
33.vi aio分别代表什么?
(a:在光标后附加文本
i:在光标前插入文本
o:在光标下插入行)
34.Jemter察看结果树?
(取样器结果:响应头,响应数据大小,响应时间
请求:参数信息,
响应数据:返回信息)
35.聚合报告?
(Label-请求名称
Samples-请求数量
Average-单个请求的平均响应时间
Median、90%Line、95%Line、99%Line-百分比请求的响应时间
Max、Min-最大、最小响应时间
Error%-错误率
Throughput-吞吐量)
36.python列表排序?
(>>> sorted([5, 2, 3, 1, 4],key=....,reverse=Flase) //不写reverse,默认升序
[1, 2, 3, 4, 5] //sorted(),对所有可迭代序列都有用
//reverse=True 降序,默认reverse=Flase升序
//key=itemgetter(0) 按照哪个下标的key进行对比排序
//key=attrgetter('age') 按照哪个名称的key进行对比
a = [5, 2, 3, 1, 4]
a.sort()
a
[1, 2, 3, 4, 5] //list.sort(),list本身会被修改)
37.三大浏览器驱动?
(Firefox驱动:geckodriver.exe
IE驱动:IEdriver.exe
Chrome驱动:chromedriver.exe)
38.测试什么时候用到数据库?
(1.造数据,改数据
2.校验数据的准确性)
39.想找什么样的公司?
(找一家互联网公司,项目前景好,能够在工作中应用自己的专业知识和技能,并不断提升自己)
40.自我介绍?
(接触了几个项目,有bs和cs都有,开始主要做功能,后面也有接触自动化,也积累了很多业务和项目经验)
41.CMMI?
(软件能力成熟度集成模型,帮助软件企业对软件工程过程进行管理和改进)
42.发现一个BUG?
(验证是不是BUG-提交-定位BUG原因-验证)
43.多久测试一轮?
(1天左右1轮测试)
44.BUG的状态?
(New新建-Assigned已指派-Open打开-Fixed已修复-Closed已关闭-Reopen再打开)
45.SVN被锁定怎么解决?
(出现这个问题后使用“清理”即"Clean up"功能,如果还不行,就直接到上一级目录,再执行“清理”,然后再“更新”)
46.测试人员如何保证软件质量?
(1. 测试策略:质量是多维度的,功能测试、性能测试、兼容性测试等多种测试类型的结合
- 用例质量:采用合适的用例方法,如何进行需求分析,用例评审
- 执行质量:如何保证执行深度(界面、关联模块、数据库、日志)与广度(系统测试类型)
- 缺陷质量:Bug评审,引入合适的Bug流程
- 过程质量:合理的软件测试流程,测试过程监控)
47.未来2年的职业规划?
(希望能在工作中多接触项目和业务,积累经验,并不断的提升自己。)
48.性能调优有哪些方面?
(数据库:不需要修改程序风险小,时间比例大的调优,效果显著。时间比例小的,效果不显著,代价大。
数据库的分析原则是先索引,后存储过程,最后表结构视图的优化,索引的优化是最简单也是通常最有效的方法
程序:哪个函数执行过多引起了性能下降,比如异常过多,某个循环过多,或是DCOM调用过多等等
内存:一般是一个长期分析的过程,要做好不容易,首先要有长期奋战的准备,其次内存泄漏的分析最好是放在单元测试之中同步进行,而不是要等到最后再去发现问题
配置:)
49.负载测试和压力测试的区别?
(负载:是指对系统不断地增加压力或增加一定压力下的持续时间,直
到系统的某项或多项性能指标达到安全临界值,例如某种资源已经达到饱和状态等
压力:是指超过安全负载的情况下,对系统不断施加压力,是通过确
定一个系统的瓶颈或不能接收用户请求的性能点,来获得系统能提供的最大服务级别的测试)
需求分析提出的问题?
最深刻BUG?
工作中遇到的问题?
五
网友评论