当前位置: 首页 > news >正文

软件测试面试【富途面经分享】

目录

一面面经(1h)

二面面经


一面面经(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协议属于哪层协议?

答:应用层

八、针对微信支付功能设计测试用例

答:微信支付测试用例 - 知乎

九、杯子倒水问题,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 = 0
2 b = 1
3 while b < 100:
4     a,b = b,a+b
5 print(a,end=',')

十二、怎么确认提出来的是一个BUG?

答:
①看需求文档,是否有明确的需求

②看问题是否违反了正常人的行为习惯或者行业的通用规范

③找产品经理或者开发人员沟通确定是否是bug

④对于无法达成一致的问题,可以组织相关人员开会,共同来决定是否是bug

十三、提出来的bug开发不承认怎么办?

答:

第一步
建议你将你的发现与开发进行更详细的讨论。这可能包括向他展示问题的具体细节和如何在测试中发现问题。尝试与开发及开发经理分享你的思路和数据,以便他们了解你的判断过程和理由。
第二步
如果开发依旧认为这不是一个bug,你应该在公司的bug跟踪系统中提出这个问题,并提供有关问题的详细信息,例如问题的表现方式,重现步骤,以及你的测试环境信息。然后,你可以等待开发团队的响应,并在必要时向开发经理寻求帮助。另外,如果这个问题影响了客户或用户的体验,你可能需要向他们解释这个问题,并提供一个工作周转方案,以便他们能够暂时绕过问题。
第三步
你可以与其他团队成员讨论这个问题,包括其他测试人员、产品经理、设计师等。他们可能会提供更多的观点和意见,并帮助你更好地理解这个问题。同时,你也可以将问题提升到更高层级的管理人员,并请求他们的支持和决策。
不过,在处理这种情况时,要注意维护好团队的关系和沟通,尊重每个人的观点和意见,避免让问题演变成个人攻击或团队内部矛盾。另外,要注重与开发团队之间的合作和沟通,及时协调和解决问题,以确保项目的顺利进行。

十四、mysql找出学生数至少5个的班级

select class from table group by class having count(student) >=5;

二面面经

一、Fiddler抓包篡改数据,截取信息应该怎么做?

答:参考链接 fidder如何截取,篡改数据_fiddler截取修改数据_香蕉麻花皮的博客-CSDN博客

二、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分.

五、同学怎么评价你的?

六、同学怎么评价你的性格的?

七、冒泡排序问题,如何进行优化?

参考链接 python 冒泡排序算法(超级详细)_冒泡排序python_一叶知秋的BLOG的博客-CSDN博客

八、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用户在本网站的访问特征等。


以下是我收集到的比较好的学习教程资源,虽然不是什么很值钱的东西,如果你刚好需要,可以评论区,留言【777】直接拿走就好了

各位想获取资料的朋友请点赞 + 评论 + 收藏,三连!

三连之后我会在评论区挨个私信发给你们~

相关文章:

软件测试面试【富途面经分享】

目录 一面面经&#xff08;1h&#xff09; 二面面经 一面面经&#xff08;1h&#xff09; 一、对白盒黑盒灰盒测试的理解 答&#xff1a; 1、黑盒测试就当整个程序是个黑盒子&#xff0c;我们看不到它里面做了什么事情&#xff0c;只能通过输入输出看是否能得到我们所需的来…...

antd 库的 Table 组件中删除一个或多个选中的列表

先解释一下原代码每个方法的含义 const TablePage: React.FC () > {/* selectedRowKeys 指定选中项的 key 数组&#xff0c;需要和 onChange 进行配合在此处&#xff0c;通过 rowSelection.selectedRowKeys 来控制选中项。*/const [selectedRowKeys, setSelectedRowKeys] …...

针对java程序员的了解细节操作系统与进程

一、&#x1f49b; 操作系统&#xff08;浅浅概念&#xff09;&#xff1a;是用来搞管理软件的 1.对下,要管理各种硬件设备 2.对上,要给应用程序提供一个稳定的运行环境 二、&#x1f499; 进程&#xff1a;正在运行的程序&#xff0c;假如程序没有运行就不叫程序&#xff0c;…...

判定是否互为字符重排、回文排列

题1&#xff1a;判定是否互为字符重排 给定两个由小写字母组成的字符串 s1 和 s2&#xff0c;请编写一个程序&#xff0c;确定其中一个字符串的字符重新排列后&#xff0c;能否变成另一个字符串。 输入: s1 "abc", s2 "bca" 输出: true 输入: s1 &quo…...

QT QTextCharFormat 说明和使用

QTextCharFormat&#xff1a;设置文本编辑框字体&#xff0c;字号&#xff0c;加粗&#xff0c;倾斜&#xff0c;下划线&#xff0c;颜色 QTextCharFormat 类的一些常用属性和方法&#xff1a; setFont(const QFont &font): 设置字体。 setFontFamily(const QString &a…...

掌握Memory Profiler技巧:识别内存问题

关于作者&#xff1a;CSDN内容合伙人、技术专家&#xff0c; 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 &#xff0c;擅长java后端、移动开发、人工智能等&#xff0c;希望大家多多支持。 目录 一、导读二、概览三、如何使用四、页面说明4.1 Java 和 Kotlin 分配…...

Linux学习之正则表达式元字符和grep命令

cat /etc/redhat-release看到操作系统的版本是CentOS Linux release 7.6.1810 (Core)&#xff0c;uname -r可以看到内核版本是3.10.0-957.21.3.el7.x86_64。 正则表达式是一种搜索字符串的模式&#xff0c;通俗点理解&#xff0c;也就是普通字符和元字符共同组成的字符集合匹…...

熟练掌握ChatGPT解决复杂问题——学会提问

目录 引言 一、5W1H分析法 1. 简单的问题&#xff08;what、where、when、who&#xff09; 2.复杂的问题&#xff08;why、how&#xff09; 2.1 为什么&#xff08;Why&#xff09;——原因 2.2 方式 &#xff08;How&#xff09;——如何 二、如何提问得到更高质量的答案…...

JVM之类加载与字节码

1.类文件结构 一个简单的HelloWorld.Java package cn.itcast.jvm.t5; // HelloWorld 示例 public class HelloWorld { public static void main(String[] args) { System.out.println("hello world"); } }编译为 HelloWorld.class 后的样子如下所示&#xff1a; […...

【博客688】如何实现keepalived vip监控与告警

如何实现keepalived vip监控与告警 1、使用的exporter https://github.com/mehdy/keepalived-exporter2、metrics里的状态的具体含义 注意&#xff1a;存状态的字符串的每个状态的值其实是跟状态在数组中的索引相对应的 具体参考这里&#xff1a; https://github.com/mehdy…...

[QT编程系列-39]:用户界面UI - 样式表QSS与样式文件快速入门

目录 1. 概述 2. CSS 3. QSS示例 4. QT样式表文件使用方法与步骤 5. QT内置样式 6. QT常见基本样式 1. 概述 Qt提供了一种称为Qt样式表&#xff08;Qt Style Sheets&#xff09;的机制&#xff0c;可以用于自定义和美化Qt应用程序的用户界面&#xff08;UI&#xff09;。…...

机器学习和深度学习简述

一、人工智能、机器学习、深度学习的关系 近些年人工智能、机器学习和深度学习的概念十分火热&#xff0c;但很多从业者却很难说清它们之间的关系&#xff0c;外行人更是雾里看花。概括来说&#xff0c;人工智能、机器学习和深度学习覆盖的技术范畴是逐层递减的&#xff0c;三…...

diffusion model2 扩散模型的文本信息融合、交叉注意力机制、lora

前言 在上一篇文章中&#xff0c;我们剖析了diffusion model的原理&#xff0c;而在这一篇文章中&#xff0c;我们探讨与扩散模型有关的其他话题&#xff0c;包括扩散模型的unet是如何在推理噪声的过程中&#xff0c;融入文本信息的考量&#xff1f;其原理为交叉注意力机制&am…...

数据结构——二叉树

本章代码仓库&#xff1a;堆、二叉树链式结构 文章目录 &#x1f36d;1. 树&#x1f9c1;1.1 树的概念&#x1f9c1;1.2 树的结构 &#x1f36c;2. 二叉树&#x1f36b;2.1 二叉树的概念&#x1f36b;2.2 特殊的二叉树&#x1f36b;2.3 二叉树的性质&#x1f36b;2.4 二叉树的存…...

架构训练营学习笔记:5-3接口高可用

序 架构决定系统质量上限&#xff0c;代码决定系统质量下限&#xff0c;本节课串一下常见应对措施的框架&#xff0c;细节不太多&#xff0c;侧重对于技术本质有深入了解。 接口高可用整体框架 雪崩效应&#xff1a;请求量超过系统处理能力后导致系统性能螺旋快速下降 链式…...

【笔记】湖仓一体架构演进与发展

https://www.bilibili.com/video/BV1oF411F7rQ/?spm_id_from333.788.recommend_more_video.0&vd_sourcefa36a95b3c3fa4f32dd400f8cabddeaf...

政务云建设与应用解决方案[42页PPT]

导读&#xff1a;原文《政务云建设与应用解决方案[42页PPT]》&#xff08;获取来源见文尾&#xff09;&#xff0c;本文精选其中精华及架构部分&#xff0c;逻辑清晰、内容完整&#xff0c;为快速形成售前方案提供参考。 完整版领取方式 完整版领取方式&#xff1a; 如需获取完…...

20天突破英语四级高频词汇——第①天

2&#xfeff;0天突破英语四级高频词汇~第一天加油(ง •_•)ง&#x1f4aa; &#x1f433;博主&#xff1a;命运之光 &#x1f308;专栏&#xff1a;英语四级高频词汇速记 &#x1f30c;博主的其他文章&#xff1a;点击进入博主的主页 目录 2&#xfeff;0天突破英语四级…...

【网络基础实战之路】基于MGRE多点协议的实战详解

系列文章传送门&#xff1a; 【网络基础实战之路】设计网络划分的实战详解 【网络基础实战之路】一文弄懂TCP的三次握手与四次断开 【网络基础实战之路】基于MGRE多点协议的实战详解 【网络基础实战之路】基于OSPF协议建立两个MGRE网络的实验详解 PS&#xff1a;本要求基于…...

K8s实战入门(三)

文章目录 3. 实战入门3.1 Namespace3.1.1 测试两个不同的名称空间之间的 Pod 是否连通性 3.2 Pod3.3 Label3.4 Deployment3.5 Service 3. 实战入门 本章节将介绍如何在kubernetes集群中部署一个nginx服务&#xff0c;并且能够对其进行访问。 3.1 Namespace Namespace是kuber…...

JavaSec-RCE

简介 RCE(Remote Code Execution)&#xff0c;可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景&#xff1a;Groovy代码注入 Groovy是一种基于JVM的动态语言&#xff0c;语法简洁&#xff0c;支持闭包、动态类型和Java互操作性&#xff0c…...

阿里云ACP云计算备考笔记 (5)——弹性伸缩

目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...

【网络安全产品大调研系列】2. 体验漏洞扫描

前言 2023 年漏洞扫描服务市场规模预计为 3.06&#xff08;十亿美元&#xff09;。漏洞扫描服务市场行业预计将从 2024 年的 3.48&#xff08;十亿美元&#xff09;增长到 2032 年的 9.54&#xff08;十亿美元&#xff09;。预测期内漏洞扫描服务市场 CAGR&#xff08;增长率&…...

React19源码系列之 事件插件系统

事件类别 事件类型 定义 文档 Event Event 接口表示在 EventTarget 上出现的事件。 Event - Web API | MDN UIEvent UIEvent 接口表示简单的用户界面事件。 UIEvent - Web API | MDN KeyboardEvent KeyboardEvent 对象描述了用户与键盘的交互。 KeyboardEvent - Web…...

ETLCloud可能遇到的问题有哪些?常见坑位解析

数据集成平台ETLCloud&#xff0c;主要用于支持数据的抽取&#xff08;Extract&#xff09;、转换&#xff08;Transform&#xff09;和加载&#xff08;Load&#xff09;过程。提供了一个简洁直观的界面&#xff0c;以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...

EtherNet/IP转DeviceNet协议网关详解

一&#xff0c;设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络&#xff0c;本网关连接到EtherNet/IP总线中做为从站使用&#xff0c;连接到DeviceNet总线中做为从站使用。 在自动…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。

1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj&#xff0c;再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南

精益数据分析&#xff08;97/126&#xff09;&#xff1a;邮件营销与用户参与度的关键指标优化指南 在数字化营销时代&#xff0c;邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天&#xff0c;我们将深入解析邮件打开率、网站可用性、页面参与时…...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式

今天是关于AI如何在教学中增强学生的学习体验&#xff0c;我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育&#xff0c;这并非炒作&#xff0c;而是已经发生的巨大变革。教育机构和教育者不能忽视它&#xff0c;试图简单地禁止学生使…...

搭建DNS域名解析服务器(正向解析资源文件)

正向解析资源文件 1&#xff09;准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2&#xff09;服务端安装软件&#xff1a;bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...