一面面经(1h)
一、对白盒黑盒灰盒测试的理解
答:
1、黑盒测试就当整个程序是个黑盒子,我们看不到它里面做了什么事情,只能通过输入输出看是否能得到我们所需的来测试。而白盒测试可以当盒子是透明的,里面的一切我们都看得清楚,从而我们可以通过去测内部结构来测试。
2、常用的黑盒测试方法有:等价类划分法、边界值分析法,因果图法、场景法、正交实验法、判定驱动表分析法、错误推测法、功能图分析法。
3、白盒测试也称为结构测试或逻辑驱动测试,是针对被测单元内部是如何进行工作的测试。youlian它根据程序的控制结构设计测试用例,主要用于软件或程序验证。测试方法有静态测试和动态测试两种。逻辑覆盖测试方法分为:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖。
4、灰盒测试,是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输入、输出的正确性,同时也关注程序内部的情况。灰盒测试不像白盒那样详细、完整,但又比黑盒测试更关注程序的内部逻辑,常常是通过一些表征性的现象、事件、标志来判断内部的运行状态。
二、接口测试属于哪类测试
答:
接口测试属于灰盒测试阶段。接口测试开始于白盒测试之后,黑盒测试之前,因此,接口测试属于灰盒测试阶段。在测试中既要关注接口的内部实现,又要关注接口的外部表现。
三、TCP和UDP的区别
答:
1、相同点:TCP和UDP都是传输层的协议
2、差别点:
①TCP是面向有连接的,UDP是面向无连接的。
②TCP是一对一传输,UDP支持一对一、一对多、多对一、多对多的交互通信。
③TCP是面向字节流的,即把应用层传来的报文看成字节流,将字节流拆分成大小不等的数据块,并添加TCP首部。UDP是面向报文的,对应用层传下来的报文不拆分也不合并,仅添加UDP首部。
④TCP支持传输可靠性的多种措施,包括保证包的传输顺序、重发机制、流量控制和拥塞控制等。UDP仅提供最基本的数据传输能力。
四、进程和线程的区别
答:
本质区别:进程是操作系统资源分配的最小单位,线程是处理器任务调度和执行的基本单位。
包含关系:一个进程至少有一个线程,线程是进程的一部分,所以线程也被称为轻权进程或者轻量级进程。
资源开销:每个进程都有独立的地址空间,进程之间的切换会有较大的开销。线程可以看成轻量级的进程,同一个进程内的线程共享进程的地址空间,每个线程都有自己独立的运行栈和程序计数器,线程之间切换的开销小,而进程间切换还要切换地址空间,其开销较大。
影响关系:一个进程崩溃后,在保护模式下其他进程不会受到影响,但一个线程崩溃可能导致整个进程被操作系统杀掉,因此多进程比多线程更健壮。
五、什么是线程同步
答:
线程有时候会和其他线程共享一些资源,比如内存、数据库等。当多个线程同时读写同一份共享资源的时候,可能会发生冲突,这时就需要引入线程同步机制,即各线程之间要有顺序使用,不能杂乱无章随意使用。线程同步指的是线程之间的协同,按照规定的先后次序执行。
线程同步的方法有:
①临界区:只允许一个线程进入临界区,其他试图访问的线程会被挂起,其范围为单个进程内。
②互斥量:只允许拥有互斥对象的线程访问公共资源,而互斥对象只有一个。可以在不同进程间使用。
③信号量:允许多个线程访问公共资源。
④事件:通知操作方式保持同步。
六、HTTP和HTTPS的区别
HTTP明文传输,安全性较差;HTTPS密文传输,安全性较好。
HTTPS协议需要到CA申请证书,一般免费证书较少,需要一定费用。
HTTP页面响应速度比HTTPS快,主要因为HTTP使用TCP三次握手建立连接,客户端和服务器需要交换3个包,而HTTPS除了TCP的三个包,还要加上SSL握手需要的9个包,所以一共是12个包。
HTTP和HTTPS使用的是完全不同的连接方式,用的端口也不同,HTTP是80,HTTPS是443,HTTPS其实就是构建在SSL/TLS之上的HTTP协议,因此比HTTP更耗费服务器资源。
七、HTTP协议属于哪层协议?
答:应用层
八、针对微信支付功能设计测试用例
答:https://zhuanlan.zhihu.com/p/553187007
九、杯子倒水问题,3升和5升杯子倒出4升水
第一种方法:
①将5升杯子装满,往3升杯子里倒,直到满.
这时5升的杯子里还剩2升水.
②把3升杯子水倒掉,5升杯子里剩下的2升水倒入3升空杯里.
这时3升杯子里有2升水.
③把5升杯子灌满,再用5升杯子将刚才没满的3升杯子倒满.
这时5升杯子里剩下的水就是4升了哦.
第二种方法:
①将3升杯子装满,往5升杯子里倒;
②把3升杯子装满,再往5升杯子里倒直到满.
这时3升杯子里有1升水.
③把5升杯子倒掉,3升水里面的1升倒到5升杯子里面,然后放满3升杯子倒到5升杯子里面,再放满3升杯子,倒到5升杯子里,这时3升杯子就剩2升水。
④5升杯子的水再倒到3升杯子里,倒满则5升杯子剩4升水。
十、25匹马赛跑,共有5个赛道,最少赛多少次可以找出前三名?
答:
①先分开赛5组(A-E), 5次, 每组的最后两名肯定会被淘汰,(-10)。
②5组第一名赛一次,假设A1 > B1 > C1 > D1>E1,那么 A1肯定是总体第一名。则D,E全部被淘汰(-6) . 现在需要在剩下的里面取2个,那么C2,C3,B3也会被淘汰(-3) 。
③那么就剩下A2,A3,B1,B2,C1了,再赛一次,取前两名(-3)。
最多7次比赛,前5次总共淘汰10匹,第6次淘汰9匹,第7次淘汰3匹。 总共淘汰22匹。
十一、编程题:波切那斐数列打印出100以内数据
1 a = 02 b = 13 while b < 100:4 a,b = b,a+b5 print(a,end=',')
十二、怎么确认提出来的是一个BUG?
答:
①看需求文档,是否有明确的需求
②看问题是否违反了正常人的行为习惯或者行业的通用规范
③找产品经理或者开发人员沟通确定是否是bug
④对于无法达成一致的问题,可以组织相关人员开会,共同来决定是否是bug
十三、提出来的bug开发不承认怎么办?
答:
第一步
建议你将你的发现与开发进行更详细的讨论。这可能包括向他展示问题的具体细节和如何在测试中发现问题。尝试与开发及开发经理分享你的思路和数据,以便他们了解你的判断过程和理由。
第二步
如果开发依旧认为这不是一个bug,你应该在公司的bug跟踪系统中提出这个问题,并提供有关问题的详细信息,例如问题的表现方式,重现步骤,以及你的测试环境信息。然后,你可以等待开发团队的响应,并在必要时向开发经理寻求帮助。另外,如果这个问题影响了客户或用户的体验,你可能需要向他们解释这个问题,并提供一个工作周转方案,以便他们能够暂时绕过问题。
第三步
你可以与其他团队成员讨论这个问题,包括其他测试人员、产品经理、设计师等。他们可能会提供更多的观点和意见,并帮助你更好地理解这个问题。同时,你也可以将问题提升到更高层级的管理人员,并请求他们的支持和决策。
不过,在处理这种情况时,要注意维护好团队的关系和沟通,尊重每个人的观点和意见,避免让问题演变成个人攻击或团队内部矛盾。另外,要注重与开发团队之间的合作和沟通,及时协调和解决问题,以确保项目的顺利进行。
十四、mysql找出学生数至少5个的班级
select class from table group by class having count(student) >=5;
二面面经
一、Fiddler抓包篡改数据,截取信息应该怎么做?
答:参考链接https://blog.csdn.net/m0_58002043/article/details/121007969
二、Linux更改用户权限命令,各位数字代表意义,权限较安全的命令是什么?
7: 4+2+1 rwx 所有者具有读取、写入、执行权限;
5: 4+0+1 r-x 同组用户具有读取、执行权限但没有写入权限;
5: 4+0+1 r-x 其他用户具有读取、执行权限但没有写入权限;
三、口算鸡兔同笼问题
答:兔子数量=(总脚数-总头数)/2,鸡的数量 = 总头数-兔子数量
四、口算8点到9点之间时针跟分钟重合的时刻
答:
时针每小时所走的角度是360/12=30,每分钟走的角度是30/60=0.5°,分针每分钟所走的角度是360/60=6.
分针与时针重合的时刻是8点后经过x分钟,当8点整的时候,时针与分针的角度差别为180°+60°=240°,
分针与时针重合时,分针比时针多走的角度为240°,因此有x*6-x*0.5 = 240,解得x为480/11
即在8点与9点之间 分针与时针重合的时刻是8点480/11分.
五、同学怎么评价你的?
六、同学怎么评价你的性格的?
七、冒泡排序问题,如何进行优化?
参考链接https://blog.csdn.net/python_tian/article/details/122036783
八、24小时时针分针重合的次数?
从凌晨0点到晚上12点,时针走了2圈,分针走了24圈,比时针多走了22圈,所以,一昼夜24小时,时针与分针重合了22次。
九、cookie中包含什么内容?
cookie主要包括四部分的内容:
1) HTTP响应报文中的Cookie头行: Set -Cookie. 使用Cookie技术的网站,在给用户发送的HTTP响应报文中,通过Set-Cookie 头行,发送大小通常不超过4KB的Cookie信息,包括为其用户分配的ID、用户对网站的访问偏好等。
2) 用户浏览器在本地存储、维护和管理的Cookie文件。浏览器每当获得新的Cookie信息,便会在Cookie文件中追加一行Cookie 信息,包括网站的域、路径、内容(如用户ID、访问偏好、商品选择等)、有效期和安全5个字段.
3) HTTP请求报文中的Cookie头行: Cookie。当用户向已经访问过且已经获得Cookie信息的网站发送HTTP请求报文时,河览器会自动检索本地的Cookie 文件,并在每个请求报文中通过Cookie头行,携带上网站为该用户分配的Cookie信息。网站可以基于用户请求报文中的Cookie值,实现对用户的跟踪、偏好统计、会话关联等功能
4) 网站在后台数据库中存储、维护Cookic信息,包括己分配给用户ID、每个ID用户在本网站的访问特征等。