软件测试面试题

测试工程师面试题汇总

虾皮面试

基础知识:
针对自己的熟悉的语言叙述会涉及python、Java、c++、mysql
mysql的索引方式
mysql的锁机制
分布式锁的理解
对微服务和分布式理解
进程和线程的区别
进程之间的通信方式
数组和list的区别
解决hash冲突的方式
数组和链表的区别
TCP的三次握手和四次挥手 为什么是三次和四次
TCP和UDP的区别
http和https的区别
python多线程利用多核,在只能使用cpython和线程的情况下
yeild的实现
c++的多态
c++引用和指针的区别
接口测试方法和使用
mysql的使用
Java中==和eqauls()的区别
python的垃圾回收机制
对性能测试的了解
对后端服务Linux的操作命令的认识
对金融交易的服务认识
注重后端的测试
功能测试:
手机微信收款二维码测试
数据结构:
设计一个“最小栈" ,相比普通栈,多了一个min方法(获取当前栈内最小的数);要求peek、push、pop、min都是O(1)时间复杂度

腾讯音乐面试题

一、给一个抽奖系统进行测试用例编写
二、python实现遍历一个文件夹的所有图片
三、查询成绩表中平均分不及格的课程超过2门的人数

货拉拉

要求:

  1. 自动化测试接口测试
  2. 持续集成原理
  3. 数据库操作
  4. python
  5. App自动化测试:appium,原理主要是脚本中引入appium库——》打开appium这个服务——〉对手机设备进行一个操作,通信协议http
    面试内容:
  6. 数据库jion,数据库去重
  7. robot framework可以用来做什么:功能测试,关键字测试用例编写
  8. python内存分配机制,python里有指针这个概念吗
  9. web安全漏洞
  10. 冒泡和快排
  11. 给你一个接口你要怎么测
    总结:
  12. selenium工作原理测试脚本作用与webdriver(浏览器驱动)在进行操作浏览器模拟认为手动操作
  13. 主流的自动化框架:1、关键字驱动操作,2、po模式
    请说明Android手机和IOS手机,系统有什么区别?
    1、两者运行机制不同:IOS采用的是沙盒运行机制,安卓采用的是虚拟机运行机制。
    2、两者后台制度不同:IOS中任何第三方程序都不能在后台运行;安卓中任何程序都能在后台运行,直到没有内存才会关闭。
    3、IOS中用于UI指令权限最高,安卓中数据处理指令权限最高。
    Android 的四层架构
    应用程序层——》应用程序框架层——》系统运行库层——》Linux核心层
    adb命令:
  14. client在pc端负责发送adb命令
  15. Daemon 守护进程,在手机上,负责接收和执行adb命令

深信服测开面试题

  1. TCP的流量控制,滑动窗口:https://www.cnblogs.com/luoquan/p/4886345.html
  2. 数据结构由哪三点组成?:数据结构、数据操作、完整性约束
  3. Linux查看电脑内存大小:free -m 运行内存,df -hl查看内存
  4. Windowns 系统的C盘损坏,无法开机,如何提取C盘的重要文件;
  5. 如何让PC启动的时候自动执行自己写的可执行文件?
  6. 勒索病毒的原理,怎么加密的文件如何防治,怎样避免?:1可以把使用的电脑升级到win 10系统,目前微软已经推出win携带文件保护功能,就是预防勒索类病毒加密文件。2使用正规透明加密软件,如红线隐私保护系统,其目录保护功能也能预防被勒索病毒加密文件。而且没有电脑系统限制,能兼容 win all系列的电脑系统。
    1. http的请求头参数包含什么,get、post的区别:请求头包括User-Agent:产生请求的浏览器类型,Accept:客户端可识别的内容类型列表,Host:请求的主机名,允许多个域名同处一个IP地址,即虚拟主机。
  7. 进程、线程、协程的区别:https://www.cnblogs.com/lxmhhy/p/6041001.html, https://blog.youkuaiyun.com/daaikuaichuan/article/details/82951084
  8. 进程间的信息传递,线程间的信息传递:https://www.cnblogs.com/fmqdblog/p/10680077.html
  9. ip协议与arp协议:https://blog.youkuaiyun.com/a3203211/article/details/27380075
  10. 测试百度,谷歌,火狐的查询速度,有多少种方法
  11. Linux查看进程 过滤某一个进程: ps -ef | grep,关闭进程:kill -9 pid
  12. Linux查看cpu利用率:https://blog.youkuaiyun.com/qq_32670879/article/details/85259916
  13. Linux 查看端口状态 用哪些参数:https://www.cnblogs.com/anyone55/p/12060095.html
  14. TCP三次连接连接已经建立了但是客户端出现了故障,服务器端怎么处理:TCP还设有一个保活计时器,显然,客户端如果出现故障,服务器不能一直等下去,白白浪费资源。服务器每收到一次客户端的请求后都会重新复位这个计时器,时间通常是设置为2小时,若两小时还没有收到客户端的任何数据,服务器就会发送一个探测报文段,以后每隔75秒钟发送一次。若一连发送10个探测报文仍然没反应,服务器就认为客户端出了故障,接着就关闭连接
  15. 很多web站点,如何测试所有的链接是否有效:http://www.51testing.com/html/41/n-3720041.html
  16. HTTP和HTTPS端口、DNS端口、DNS是基于TCP还是UDP,,http是基于TCP还是UDP
  17. 端口做什么用的、哪个层会用到端口:https://zhidao.baidu.com/question/1182057375009024499.html
  18. OSI七层、五层、每层的作用、每层有哪些协议:https://blog.youkuaiyun.com/weixin_43912756/article/details/108442122
  19. Bug的生命周期:发现-提交-分配-处理-
  20. 测试步骤和预置条件你是怎么区分的
  21. 用过哪些测试方法
  22. Linux常用命令:查看端口占用,查找文件:https://www.cnblogs.com/macrored/p/11867541.html,
  23. 怎么判断环形链表(力扣原题:https://blog.youkuaiyun.com/qq_29997037/article/details/104555020
  24. 满二叉树的节点数:https://zhidao.baidu.com/question/236973838.html
  25. Python浅拷贝深拷贝:https://www.cnblogs.com/alexusli/archive/2008/08/27/1277655.html
  26. 在上百万条地址信息中查找给出地址
  27. 了解网络路由寻址过程吗?:https://www.cnblogs.com/hello-shf/p/13570587.html
  28. 算法题:hello world 变成 world hello
  29. 当数据库流量大 数据大怎么办:https://www.cnblogs.com/suzixuan/p/12600432.html
  30. 微信扫码登录测试用例设计
  31. 深信服的纸杯测试用例设计
  32. Git相关命令提问,主要是分支以及解决代码冲突。
  33. 哈希表你了解吗?哈希表是怎么实现的?
  34. 如何编译Linux内核::https://www.cnblogs.com/harrypotterjackson/p/11846222.html
  35. Linux 文件有哪些权限, 如何设置文件的权限为root:https://www.runoob.com/linux/linux-comm-chmod.html
  36. 五层模型?各层的功能是?每一层的传输单元是什么?:https://zhidao.baidu.com/question/477149187.html https://zhidao.baidu.com/question/341823320.html
  37. IP的头部有多少个字节?有哪些字段?(没答上来):60字节,
  38. TTL字段是做什么的?:生存时间,该字段表示一个IP数据报能够经过的最大的路由器跳数,TTL字段是由IP数据报发送端初始设置的。
  39. B树B+树的区别及使用场景:https://blog.youkuaiyun.com/qq_20817327/article/details/107783426
  40. 守护进程如何实现?:https://blog.youkuaiyun.com/chouxiu2594/article/details/100748989
  41. IP地址如何区分主机位和网络位?https://zhidao.baidu.com/question/26770723.html
  42. 怎么测试网络连通性?https://jingyan.baidu.com/article/3c48dd3464a86ce10be35803.html?spm=0.0.0.0.BM7gtE
  43. 在一个浏览器输入一个url后会发生什么https://blog.youkuaiyun.com/jochebed666/article/details/88377253
  44. ip协议与arp协议https://blog.youkuaiyun.com/a3203211/article/details/27380075
  45. 测试一个古老网站主页上有哪些链接还在正常运作https://www.cnblogs.com/guominqiu/archive/2011/04/07/2007600.html
  46. 列表,元组,字典(映射)分别介绍一下,它们之间有什么区别?https://blog.youkuaiyun.com/qq_25736745/article/details/83177142
  47. 为什么要用深拷贝,说一下理由https://blog.youkuaiyun.com/liumiaomiao1991/article/details/79518203
  48. Git相关命令提问,主要是分支以及解决代码冲突。https://blog.youkuaiyun.com/qq_36255705/article/details/79852603
  49. 你这个模型的泛化能力怎么样?你如何去衡量它的泛化能力?指标是什么?
  50. Python和C语言的区别https://www.zhihu.com/question/314756498/answer/626326654
  51. 测试开发工程师常见面试题https://www.cnblogs.com/zgq123456/p/11105257.html
  52. 八大排序及其优化https://www.jianshu.com/p/93e3387be5bb
  53. 十大经典排序算法https://www.cnblogs.com/onepixel/articles/7674659.html
  54. HTTP状态码https://www.runoob.com/http/http-status-codes.html
  55. 网关是什么?https://www.tianqijun.com/shenghuo/audio/8807.html
    编程题:
    在不用Python sort 的语法下对下列数进行排序: 123 1234 1.234 234
    主要考察冒泡、选择、快速排序

3月16号更新
测试流程、基础考察:

介绍软件生命周期
单元、集成、系统、验收、回归测试
如何处理测试中遇到问题
测试中系统宕机该怎么办
测试中遇到bug长时间不更新,并已经督促开发
考察编写测试用例
自动化测试和手工测试区别
结合工作说一下自动化测试解决哪些问题
算法考察:
给一个随机字符串,统计每个字符的出现的个数,然后从大到小排序2、{“a”:12,“b”:1,“c”:34},按照value指的大小,重新对这个字典进行排序3、2,3,4,5,6,这几个数字,组成一个4位数的数字,可以组成多少个

Linux基础考察:

查看磁盘使用df 2、查看文件du, du -sh .全部文件占用大小3、查看Linux CPU内存和系统版本:free、uname、4、查看Linux网络连接情况:top、netstat、ifconfig
Linux三剑客:awk,sed,grep
文件权限修改: chmod
vi 文件名 #编辑方式查看,可修改cat 文件名 #显示全部文件内容more 文件名 #分页显示文件内容less 文件名 #与 more 相似,更好的是可以往前翻页tail 文件名 #仅查看尾部,还可以指定行数head 文件名 #仅查看头部,还可以指定行数
利用 ps 怎么显示所有的进程? 怎么利用 ps 查看指定进程的信息?
ps -ef (system v 输出)
ps -aux bsd 格式输出
ps -ef | grep pid
通过什么命令指定命令提示符?
\u:显示当前用户账号
\h:显示当前主机名
\W:只显示当前路径最后一个目录
\w:显示当前绝对路径(当前用户目录会以~代替)
$PWD:显示当前全路径
: 显 示 命 令 行 ’ :显示命令行’ '或者’#'符号
#:下达的第几个命令
\d:代表日期,格式为week day month date,例如:“MonAug1”
\t:显示时间为24小时格式,如:HH:MM:SS
\T:显示时间为12小时格式
\A:显示时间为24小时格式:HH:MM
\v:BASH的版本信息 如export PS1=’[\u@\h\w#]$‘
10、du 和 df 的定义,以及区别?

Python基础考察:

进程和线程、协程的区别
Python的垃圾回收机制
Python的闭包
Python的深拷贝和浅拷贝的区别
Python中是否存在指针
Python的列表、元组、字典的区别
Lambda函数
Python语言类型
Python的鸭子类型和猴子补丁
Python装饰器的作用,两个装饰器装饰一个函数的执行顺序
Python的可变序列和不可变序列
Python的数据驱动类型
Python的格式化输出
Python中read,readline和readlines
Python中is和==的区别
如何解决GIL的问题

数据库基础考察:

MySQL的索引方式
MySQL的锁机制
查询成绩表中平均分不及格的课程超过2门的人数
Mysql的事物
计算机网络考察考察:
ipv4和ipv6的区别
状态码100-500的区别
三次握手协议、四次挥手原理
http和HTTPS的区别原理
TCP和UDP的区别
Ssl/lts协议的区别
浏览器输入url后发生了什么
测试框架考察:
Get和post的区别:
get请求主要使用在哪些方面,携带参数么,参数需要处理么
Post请求主要使用在哪些方面,如果请求的是https请求
Cookie和session的区别:
cookie数据存放在客户的浏览器上,session数据放在服务器上
cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗
session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能
单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie
4、访问错误或超时怎么办

Pytest基础:

setup和teardown的内容
怎么生成HTML测试报告,如何解决测试报告的乱码
测试文件、类的命名方式
怎么调用配置文件的函数
Pytest的使用命令
怎么描述测试用例的优先级
Unittest基础:
结合工作项目说一下
unittest.TestCase作用
测试用例跳跃,通过skip,skipIf,skipUnless装饰器跳过某个case
怎么进行多个断言,断言方式
unittest最核心的四部分是:TestCase,TestSuite,TestRunner,TestFixture

Fiddler基础:

怎么抓取https的请求
怎么抓取手机上的请求
怎么进行数据的筛选
怎么设置断点数据
Appium基础:
工作流程
定位元素
怎么进行真机上的测试

Selenium基础:

原理webdriver的工作,协议The Wire Protocol
怎么使用selenium进行测试
存在几种元素定位方式:8种:id、name、class name、tag name、link text、partial link text、xpath、css selector
遇到验证码的情况
提高selenium的自动化执行效率
怎么定位动态元素: 触发动态事件,然后findElemnt
怎么处理同时打开多个界面所造成的卡断
现在使用的最新版本
怎么定位表单中内嵌的表单

Python_web框架:

Django:
Django的orm
Django和flask的区别

Flask:
使用的模型
连接数据库的方法
谈谈Flask-Restful的作用
消息闪现
谈谈Flask_session

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值