朋友入职已经两周了,整体工作环境还是非常满意的!所以这次特意抽空给我写出了这份面试题,而我把它分享给伙伴们,面试&入职的经验!
大概是在2月中的时候他告诉我投递了字节跳动并且简历已通过,2月23经过了4轮面试收获了Offer,当时也参考了很多牛客网站上大佬的面经。
1.自我介绍 项目(重要)
2.项目中最大的挑战,花费最长时间的项目,比较有成就感的事情
3.项目中印象最深的bug
4.有什么想问的吗
5.适合业务测试还是技术测试
6.为什么选择字节
7.分别用3个词描述自己的优缺点
1.对测试开发的认识,为什么想做测试开发,测试测开的理解
2.软件的分类
3.什么是接口测试
4.微信红包的测试用例
5.微信评论功能的测试用例
6.测试一下支付宝付款码,设计测试用例
7.黑盒测试的方法
8.白盒测试的方法
9.软件测试的流程
10.登录功能怎么设计测试用例?
11.网上银行转账是怎么测的,设计一下测试用例。
12.给你一个网站,你应该如何测试?
13.一个有广告的纸杯子,请设计测试用例?
14.想象一个登录框,包括ID、密码、登录、取消,记住密码(复选框),尽可能的写出你想到的测试点?
15.测试淘宝购物车的测试案例
16.设计一下抖音上下滑动视频的测试用例
17.设计抖音app用户登录测试
18.中断测试
19.测试在一个场景下,推荐滤镜
20.朋友圈点赞评论测试用例
1.如果抖音一个地区的许多用户无法下载视频的原因
2.如果用户收到了银行短信提示已经扣款成功了,但是商家没有收到钱,你觉得会是什么问题
3.输入一个url,请问发生了什么?
4.如何实现一个用户登录功能
5.高并发下减少事务带来的性能消耗?
6.如果一个API接口出现一个不稳定出现的bug,如何去确定?
7.如果提交bug,开发告诉你不存在,如何处理?
8.访问页面加载缓慢的原因以及如何解决
9.如何你和你的领导意见不一致,你会怎么做
10.如果图片上传失败,分析原因
11.针对评论功能,你如何设计接口,主要回答需要传递的参数有哪些?
12.app页面白屏了什么原因
13.全链路压测中,找到了某一个服务器CPU负载率100%,磁盘和内存使用率正常,请问你会怎么去分析可能的原因
14.设计买火车票的系统,输入出发站和到达站,返回所有可能的结果
15.添加购物车请求后发生了什么
16.淘宝用户支付失败的原因
1.python的内存池机制
2.python数组和列表的区别
3.python你常用哪些包,标准库
4.面向过程和面向对象的语言区别
5.反射
6.python的数据结构
7.dict和list的底层实现
8.python装饰器,作用,用法
9.编译型语言和解释型语言 解释型语言的优点
10.垃圾回收机制
11.GIL锁
12.is和==
13.__new__和__init__区别
14.用python写出多线程,循环打印123
1.什么是接口
2.如果模块请求http改为了https,测试方案应该如何制定,修改?
3.常用HTTP 协议调试代理I具有什么?详细说明抓取HTTPS协议的设置过程?
4.描述TCP/IP协议的层次结构,以及每一-层中重要协议
5.jmeter,一个接口的响应结果如下
6.接口产生的垃圾数据如何清理
7.依赖第三方的接口如何处理
8.测试的数据你放在哪?
9.什么是数据驱动,如何参数化?
1.TCP三次握手,四次挥手的过程
2.为什么客户端要在TIME_WAIT状态等待一段时间
3.CLOSING状态
4.如果server端没有收到第三次ack,但是收到了client端发送的数据,server端会怎么处理
5.讲一讲get和post
6.http状态码
7.TCP和UDP
8.一次HTTP请求的过程(输入URL到返回的全过程)
9.http和https
10.无状态和无连接
11.OSI七层模型,各层有哪些协议
12.HTTP协议 请求报文结构
13.TCP如何保证可靠传输,丢包怎么办
14.讲一下滑动窗口
15.TCP三次握手中SYN和ACK包有什么不同,包含什么
16.UDP想要可靠怎么实现 RUDP
17.半连接攻击
18.TCP粘包和拆包
19.cookie和session是什么,为什么要用cookie和session
20.DNS协议和作用
21.DNS的查询方式
22.ARP协议作用、工作方式
23.以太网数据包的大小最大为多少
24.三次握手过程中是否存在安全问题?描述一下存在什么样的安全问题?针对这样的安全问题如何防御?
25.web攻击,CSRF攻击
26.TCP如何进行拥塞控制?拥塞控制如何判断发生拥塞?
27.TCP快重传如何判断丢失?
28.https证书在哪存放
29.长连接和短连接以及他们分别适用的场景
1.取一个月内的id分组 取一个年级中每个班级年龄最小的同学名字 成绩表输出前三名的成绩,后三名呢 拷贝A表的数据到B表 查询每门科目都大于80分的学生名字 筛选出每个小时的记录 考察where 考察聚合函数 where和having的区别 一个数据库sql查询重复个数 在学生成绩表中查询平均分不及格(低于60)的学生id及平均分 查询总成绩最高的人的姓名 user表中在一个时间段内登陆三次的用户id limit的用法
2.数据库引擎及他们之间的区别 InnoDB MyISAM MEMORY
3.mysql的日志怎么查询
4.(多次)查询速度慢的原因,如何解决
5.数据库的事务是什么?怎么使用
6.主键、外键、索引的各自的含义以及区别
7.事务的特性(ACID),讲一下每个特性的意思
8.索引的类型
9.什么是聚簇索引、什么是非聚簇索引
10.索引的数据结构是什么
11.前缀索引
12.MySQL/MongoDb 端口号
13.数据库有几种表之间的连接形式(左连接,右连接,内连接,完全连接)
14.说说redis中的数据结构和应用场景
15.三大范式
16.数据库隔离等级
17.为什么要用b+树索引而不用hash
1.查看进程ps 查看所有进程长格式ps -ef 打印当前文件夹文件 ls -al a所有文件 l详细信息 软链接 ln -s a target 硬链接 ln 创建目录 mkdir 修改权限 chmod 查看文件: 移动文件mv 也可以重命名 复制文件cp 删除文件 rm -r 递归删除 -f删除只读文件 通配符?单个字符,*多个字符,[a-z]字符集 grep 正则搜索 显示行号-n 查询个数-c 反选-v 查看指定进程 ps -ef | grep pid 查看命令历史 history 查看磁盘空间df -hl 查看文件大小du 查找文件 find [目录] 以名字查找-name “h*”以h开头 终止一个进程 kill -9 pid
2.如何防止新人误操作rm -rf
3.找进程号为199的进程 ls -ef|grep 199
4.某文件中含关键词的行数 grep -c "key" ./file
5.该目录下以.log结尾的文件中包含关键词a但不包含关键词b的行数 grep "a" ./file | grep -cv "b"
1.一根金条,需要一周每天都发工资,切割两次,请问怎么切割 把金条切分为1/7, 2/7, 4/7,每天找零
2.100个足球队两两比赛角逐出一支冠军队伍,请问至少比赛几次 每场比赛淘汰一只队伍,所以需要99场比赛
3.25匹马5个赛道,求前三名
4.100个豆子,五个囚犯,拿的豆子最多或者最少都要被处死,求谁的生存概率大一点
1.你的测试职业发展是什么?你自认为做测试的优势在哪里?
2.你找工作时,最重要的考虑因素为何?
3.为什么我们应该录取你?
4.请谈谈你个人的最大特色。
5.一个测试工程师应具备那些素质和技能?
6.还有问一下你是怎样保证软件质量的,也就是说你觉得怎样才能最大限度地保证软件质量?
7.为什么选择测试这行?
8.如果我雇用你,你能给部门带来什么贡献?
这里就是朋友分享给我的面试,不过不仅仅是他一个人的面试题,还有自己的一些面试经历整理出来的题目,有些题目的答案我也自己总结了,一共有286页的PDF,因为太长这里就不放了。希望为大家理清 测试岗 面试的主线思路,通过详解各大互联网公司的常见面试题,从面试的角度去展开介绍某一知识点,以及该知识点在项目中的使用,并在此过程中帮你梳理和建立完善的软件测试知识体系结构。祝大家都可以找到自己理想的工作
这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点击下方小卡片进群免费获取。
我正在使用Ruby,我正在与一个网络端点通信,该端点在发送消息本身之前需要格式化“header”。header中的第一个字段必须是消息长度,它被定义为网络字节顺序中的2二进制字节消息长度。比如我的消息长度是1024。如何将1024表示为二进制双字节? 最佳答案 Ruby(以及Perl和Python等)中字节整理的标准工具是pack和unpack。ruby的packisinArray.您的长度应该是两个字节长,并且按网络字节顺序排列,这听起来像是n格式说明符的工作:n|Integer|16-bitunsigned,network(bi
需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc
目录第1题连续问题分析:解法:第2题分组问题分析:解法:第3题间隔连续问题分析:解法:第4题打折日期交叉问题分析:解法:第5题同时在线问题分析:解法:第1题连续问题如下数据为蚂蚁森林中用户领取的减少碳排放量iddtlowcarbon10012021-12-1212310022021-12-124510012021-12-134310012021-12-134510012021-12-132310022021-12-144510012021-12-1423010022021-12-154510012021-12-1523.......找出连续3天及以上减少碳排放量在100以上的用户分析:遇到这类
我今天看到了一个ruby代码片段。[1,2,3,4,5,6,7].inject(:+)=>28[1,2,3,4,5,6,7].inject(:*)=>5040这里的注入(inject)和之前看到的完全不一样,比如[1,2,3,4,5,6,7].inject{|sum,x|sum+x}请解释一下它是如何工作的? 最佳答案 没有魔法,符号(方法)只是可能的参数之一。这是来自文档:#enum.inject(initial,sym)=>obj#enum.inject(sym)=>obj#enum.inject(initial){|mem
我真的只是不确定这意味着什么或我应该做什么才能让网页在我的本地主机上运行。现在它只是显示一个错误,上面写着“我们很抱歉,但出了点问题。”当我运行railsserver并在chrome中打开localhost:3000时。这是控制台输出:StartedGET"/users/sign_in"for127.0.0.1at2013-07-0512:07:07-0400ProcessingbyDevise::SessionsController#newasHTMLCompleted500InternalServerErrorin55msNoMethodError(undefinedmethod`
好的,所以我有了我正在使用的应用程序的这种方法,它可以在生产中使用。我的问题为什么这行得通?这是新的Ruby语法吗?defeditload_elements(current_user)unlesscurrent_user.role?(:admin)respond_todo|format|format.json{render:json=>@user}format.xml{render:xml=>@user}format.htmlendrescueActiveRecord::RecordNotFoundrespond_to_not_found(:json,:xml,:html)end
你能解释一下吗?我想评估来自两个不同来源的值和计算。一个消息来源为我提供了以下信息(以编程方式):'a=2'第二个来源给了我这个表达式来评估:'a+3'这个有效:a=2eval'a+3'这也有效:eval'a=2;a+3'但我真正需要的是这个,但它不起作用:eval'a=2'eval'a+3'我想了解其中的区别,以及如何使最后一个选项起作用。感谢您的帮助。 最佳答案 您可以创建一个Binding,并将相同的绑定(bind)与每个eval相关联调用:1.9.3p194:008>b=binding=>#1.9.3p194:009>eva
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭9年前。我正在创建一个Sinatra应用程序,它采用上传的CSV文件并将其内容放入哈希中。当我像这样在我的app.rb中引用这个散列时:hash=extract_values(path_to_filename)我不断收到此错误消息:undefinedmethod`bytesize'forHash:0x007fc5e28f2b90#object_idfile:utils.rblocation:bytesiz
(跟进我之前的问题,Ruby:howcanIcopyavariablewithoutpointingtothesameobject?)我正在编写一个简单的Ruby程序来在.svg文件中进行一些替换。第一步是从文件中提取信息并将其放入数组中。为了避免每次调用此函数时都从磁盘读取文件,我尝试使用memoize设计模式-在第一次调用后的每次调用中都使用缓存结果。为此,我使用了一个在函数之前定义的全局变量。但是,即使我在返回局部变量之前将该变量.dup为局部变量,调用该变量的函数仍在修改全局变量。这是我的实际代码:#memoizetokeepfromhavingtoreadoriginalfi
当我刚刚运行middleman时服务,all.css编译得很好,只包含对+box-shadow(none)的调用:/*line1,/home/yang/asdf/source/stylesheets/content.css.sass*/div{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;}但是当我构建网站时,我得到了这个Sass/Compass错误:$middlemanbuildSlim::EmbeddedEngineisdeprecated,itiscalledSlim::EmbeddedinSlim2.0