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

某科技公司提前批测试岗

在这里插入图片描述

文章目录

  • 题目

今天给大家带来一家提前批测试岗的真题,目前已经发offer

题目

1.自我介绍
2.登录页面测试用例设计
在这里插入图片描述
3.如何模拟多用户登录
可以使用Jmeter,loadRunner性能测试工具来模拟大量用户登录操作去观察一些参数变化

4.有使用过Jmeter,loadRunner做过性能压测吗?
简单对项目进行过测试

5.谈谈你对SQL注入的理解,在什么情况下会发生
SQL注入是一种常见的安全漏洞攻击,指的是通过在应用程序的输入参数中插入恶意的SQL代码,从而欺骗数据库系统执行非授权的操作。简单介绍在Mybatis使用${}编写SQL语句时发生SQL注入

select * from user username = '${username}' and password = '${password}'

我们只需要在密码输入框输入

1'or'1=1'

就可以修改查询条件从而达到登录功能,建议在Mybatis中使用#{}传递参数

还了解过其他安全问题吗?
HTTP明文传输,使用Fiddler抓包可以直接看到密码

6.介绍项目(博客网站)
介绍背景:自己经常喜欢学习后进行总结,一般都是记录在CSDN,但也想要有一个自己的记录平台,于是就开发了一个博客网站,方便自己后期学习记录
主要工作:后端开发 + 项目测试
技术栈:SpringBoot + Mybatis + Redis + MySQL
主要实现功能:登录功能(动态验证码),注册(邮箱验证),博客列表页(所有用户文章,支持分页功能),个人文章页(个人用户文章),文章编辑页(支持Markdown格式),文章增删改功能,个人信息页(修改头像,昵称,密码)

7.介绍项目部署过程(详细过程+Linux命令+出错排查)
部署之前首先需要将数据库相关配置信息更改为服务器数据库的信息,将yml文件profile从dev改成prod的

  1. 首先介绍了下Servlet项目的部署过程(将war包放在webapps目录下,启动Tomcat)
  2. 在介绍下Spring项目的部署过程(nohup java -jar myblog.jar &)

默认端口是8080,如果被别的应用占用了,可以使用kill -9 8080 或者 修改下项目server-port

8.项目Redis用在哪里
主要用户文章缓存(30分钟的TTL),存储邮箱验证码(2分钟TTL),使用的是Spring提供的Redis,Spring-Data-Redis相关API

9.如何解决Cokkie和Token存储的
Cookie和Token是在Web应用程序中常见的两种身份验证和会话管理机制。
我的项目中是使用的Cokkie,Token和JWT技术也是常见的会话技术,引入这个主要是因为HTTP是无状态的,每次请求都是无状态的,使用Cokkie和Session结合使用使HTTP变成有状态的,当第一次请求到服务器,服务器会创建一个Session并返回给浏览器一个JSessionId,后续请求都会在请求头携带JSessionId

10.将一个表数据清空有哪几种方式
一共有三种方式,分别是:drop,truncate,delete

drop:直接删除表结构包括数据

drop table 表名

truncate:删除表数据保留表结构,一次快速清空整个表,重置自增主键,无法回滚

truncate table 表名

delete:删除表数据保留表结构,但是保留表结构和索引,可以在事务中进行回滚,支持条件删除

delete from 表名 where 条件;

11.介绍常用Linux命令
ls:列出当前目录下的文件
-a 全部
-l 列表
-h 显示大小
pwd:显示当前工作目录
rm:删除文件
mv:移动文件
cp:复制文件
touch:创建文件
cat:查看文件
echo:输出文件
tail:查看文件尾部(默认10行)
head:查看文件首行(默认10行)
more:支持翻页
mkdir:创建目录
vi,vim:文件编译
yum,rpm:包管理命令
top:查看CPU信息
free:查看内存资源
ps:查看进程信息
ifconfig:查看ip信息
nestat:查看网络信息
grep:过滤信息
|:管道符
which:查看命令
chmod:修改文件,文件夹权限
ping:检查网络是否连通
find:查看文件
su/sudo:切换用户
clear或者ctrl + l :清空终端命令
wc:统计文件行数,单词信息
>: 追加符

12.ps常见跟什么参数,aux分别代表什么
-aux 或者 -ef
a: 显示所有用户的进程,而不仅仅是当前用户的进程。
u: 以详细的格式显示进程信息,包括用户、进程ID(PID)、CPU使用率、内存占用等。
x: 显示没有控制终端的进程。

13.对堆和栈的理解
堆是线程共有的可能会发生线程安全问题,栈是线程私有的
栈是一个FIFO的数据结构,主要存储函数调用信息、局部变量、函数参数、返回值,可能会出现栈溢出
堆主要是用来存储对象和数组,用户不需要关注内存管理和垃圾回收,这一块是由JVM帮我们来管理的,堆也是我们JVM内存中最大的一部分,我们可以通过 -xms -xmx调节。
需要我介绍一下垃圾回收相关内容吗?
面试官:这块你掌握的还可以,先不介绍了

14.HTTP与HTTPS的区别,签名是对称加密还是非对称加密
HTTP是明文传输不安全,HTTPS是在HTTP在TCP之间加了SSL/TLS安全协议,通过对称加密,非对称加密,数字证书来确保安全性,HTTP默认端口是8080,HTTPS是443
签名是非对称加密,服务器生成一对公钥密钥,将公钥和数字证书传输给浏览器,浏览器用来验证服务器信息,然后使用公钥加对称密钥传输给服务器,主要是为了确保安全性,防止运营商劫持,后续使用对称加密是为了考虑效率问题

15.输入一个网址到页面显示出来的过程
输入一个网站就是URL,首先URL有几部分组成,协议+IP+端口(可省略,HTTP默认是8080)+路径+参数(通过&间隔),URL对应服务器一个资源,但是IP一般比较难记,我们可能使用的是服务器的域名,浏览器会构建一个HTTP请求,但是TCP不识别域名,于是我们需要对域名进行解析,首先会查询浏览器缓存,然后去查看Host文件,如都没有的话,再去请求本地DNS服务器,如果本地DNS服务器没有再去请求根DNS服务器获取该域名的权威DNS服务器,然后请求权威DNS服务器获取IP地址。
通过DNS获取到IP之后,浏览器通过调用Socket库来委托操作系统的协议栈,HTTP是基于TCP的,首先会建立三次握手,生成TCP头信息,包括源端口和目的端口,端口是为了定位服务器中唯一的进程,再去调用网络层提供的服务IP头封装一个源地址IP和目标IP,再去调用网络接口层封装一个MAC地址和目标MAC地址,但是我们并不知道对方的MAC地址,那么就需要借助ARP协议帮我们找到路由器的MAC地址,ARP协议会帮我们在以太网中广播去获取IP,并将本次查询存放在ARP缓存中,目前我们的网络包只是存放在内存中的一串二进制信息,无法发送,于是需要借助我们的网卡,将内容复制到网卡的缓冲区中,加上起始帧分隔符和末尾加上校验序列,并将数字信息转化为电信号,然后交换机根据MAC地址查找MAC地址,将信号发送到相应端口,如果没有查到那么就会给每个端口都会发送,经过交换机到达路由器进行转发达到服务器之后层层解析直到获取到相应资源,生成HTTP响应返回给浏览器,如果是 HTML 文档,则进入下一步; 否则,如果是图片、CSS 文件、JavaScript 文件等资源,则浏览器会进行相应的渲染或执行。

相关文章:

某科技公司提前批测试岗

文章目录 题目 今天给大家带来一家提前批测试岗的真题,目前已经发offer 题目 1.自我介绍 2.登录页面测试用例设计 3.如何模拟多用户登录 可以使用Jmeter,loadRunner性能测试工具来模拟大量用户登录操作去观察一些参数变化 4.有使用过Jmeter,loadRunner做过性能压…...

一次redis缓存不均衡优化经验

背景 高并发接口,引入redis作为缓存之后,运行一段时间发现redis各个节点在高峰时段的访问量严重不均衡,有的节点访问量7000次/s,有的节点访问量500次/s 此种现象虽然暂时不影响系统使用,但是始终是个安全隐患&#x…...

npm发布包

1.npm 登录 在控制台输入命令 npm login 按提示输入用户名,密码,邮箱后登录 如果出现如下提示 需要将淘宝镜像源切换为npm源,删除或注释以下内容就行 2.发布 进入准备发布的代码的根目录下,输入命令 npm publish 3.删除已发…...

Qt5.13引入QtWebApp的模块后报错: error C2440: “reinterpret_cast”: 无法从“int”转换为“quintptr”

1、开发环境 Win10-64 qt5.13 msvc2015-64bit-release 2、报错 新建一个demo工程。 引入QtWebApp的httpserver、logging、templateengine三个模块后。 直接运行,,此时报错如下: E:\Qt5.13.1\install\5.13.1\msvc2015_64\include\QtCore…...

软件为什么要进行性能压力测试?

软件为什么要进行性能压力测试?随着软件应用的不断增多和复杂度的提高,软件的性能对用户体验和业务成功至关重要。性能问题可能导致软件运行缓慢、崩溃或无响应,给用户带来不便甚至损失。为了确保软件能够在高负载和压力下正常运行&#xff0…...

阻塞队列BlockingQueue详解

一、阻塞队列介绍 1、队列 队列入队从队首开始添加,直至队尾;出队从队首出队,直至队尾,所以入队和出队的顺序是一样的 Queue接口 add(E) :在指定队列容量条件下添加元素,若成功返回true,若当前…...

pygame贪吃蛇游戏

pygame贪吃蛇游戏 贪吃蛇游戏通过enter键启动,贪吃蛇通过WSAD进行上下左右移动,每次在游戏区域中随机生成一个食物,每次吃完食物后,蛇变长并且获得积分;按空格键暂停。 贪吃蛇 import random, sys, time, pygame from …...

Mac系统下使用远程桌面连接Windows系统

一、远程桌面工具 Microsoft Remote Desktop 二、下载地址 https://go.microsoft.com/fwlink/?linkid868963 三、下载并安装 四、添加远程PC PC name:云服务器IP。 User account: 添加系统用户 PC name:远程桌面 IP 地址User account:可以选择是…...

使用 OpenCV 和深度学习对黑白图像进行着色

在本文中,我们将创建一个程序将黑白图像(即灰度图像)转换为彩色图像。我们将为此程序使用 Caffe 着色模型。您应该熟悉基本的 OpenCV 功能和用法,例如读取图像或如何使用 dnn 模块加载预训练模型等。现在让我们讨论实现该程序所遵循的过程。 给定一张灰度照片作为输入,本文…...

从价值的角度看,为何 POSE 通证值得长期看好

PoseSwap 是 Nautilus Chain 上的首个 DEX,基于 Nautilus Chain 也让其成为了首个以模块化构建的 Layer3 架构的 DEX。该 DEX 本身能够以 Dapp 层(Rollup)的形态,与其他应用层并行化运行。...

pytorch的CrossEntropyLoss交叉熵损失函数默认reduction是平均值

pytorch中使用nn.CrossEntropyLoss()创建出来的交叉熵损失函数计算损失默认是求平均值的,即多个样本输入后获取的是一个均值标量,而不是样本大小的向量。 net nn.Linear(4, 2) loss nn.CrossEntropyLoss() X torch.rand(10, 4) y torch.ones(10, dt…...

OKR管理策略:为开发团队注入动力

引言 在这个快速变化的世界中,公司需要迅速应对市场变化,并保持其目标和战略的清晰性和一致性。而OKR(Objectives and Key Results)正是这个挑战的解决方案之一。OKR的实施可以帮助开发团队明确目标,关注关键结果&…...

C++二叉搜索树剖析

目录 🍇二叉搜索树概念🍈二叉搜索树查找🍉二叉搜索树的插入🍊二叉搜索树的删除🍍二叉搜索树的查找、插入、删除实现🍋二叉搜索树的应用🥭二叉搜索树的性能分析🍓总结 🍇二…...

升级你的GitHub终端认证方式:从密码到令牌

升级你的GitHub终端认证方式:从密码到令牌 前言 GitHub官方在2021年8月14日进行了一次重大改变,它将终端推送代码时所需的身份认证方式从密码验证升级为使用个人访问令牌(Personal Access Token)。这个改变引起了一些新的挑战&am…...

【力扣】链表题目总结

文章目录 链表基础题型一、单链表翻转、反转、旋转1.反转链表2.反转链表II——反转部分链表3.旋转链表4.K个一组翻转链表5.反转偶数长度组的节点 二、删除单链表中的结点1.删除链表的结点2.删除未排序链表中的重复节点3.删除已排序链表中的重复元素I——重复元素只剩下一个4.删…...

Thunar配置自定义动作

Add “Copy To” and “Move To” custom actions in Thunar file manager | For the record 1.在此打开终端 图标-应用程序:utilities-terminal 命令:exo-open --working-directory %f --launch TerminalEmulator 文件类型:* 目录 2.右键增…...

Python 开发工具 Pycharm —— 使用技巧Lv.3

单步执行调试 1: 鼠标左键单击红点是断点行 2:甲虫样式是进行调试方式运行,鼠标左键单击点击 3: 单步运行图标,点击让程序运行一行 4: 步入步出,可以进入当前代码行函数内 5:重新运行…...

51单片机(普中HC6800-EM3 V3.0)实验例程软件分析 实验三 LED流水灯

目录 前言 一、原理图及知识点介绍 二、代码分析 知识点五:#include 中的库函数解析 _crol_,_irol_,_lrol_ _cror_,_iror_,_lror_ _nop_ _testbit_ 前言 第一个实验:51单片机(普中HC6800-EM3 V3.0…...

深度学习与计算机相结合:直播实时美颜SDK的创新之路

时下,实时美颜技术就成为了直播主们的得力工具,它可以在直播过程中即时处理视频画面。而支持实时美颜功能的SDK更是推动了这项技术的发展,让直播主和普通用户都能轻松使用美颜功能。 一、美颜技术的演进 早期的美颜技术主要依赖于简单的图…...

Unity寻找子物体的方法

1.GetComponentsInChildren() 查找单个子物体 GameObject childObjectGetComponentInChildren<Transform>(); 查找多个子物体 Transform[] myTransforms GetComponentsInChildren<Transform>(); foreach (var child in myTransforms){ Debug.Log(child.name…...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析

今天聊的内容&#xff0c;我认为是AI开发里面非常重要的内容。它在AI开发里无处不在&#xff0c;当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗"&#xff0c;或者让翻译模型 "将这段合同翻译成商务日语" 时&#xff0c;输入的这句话就是 Prompt。…...

树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法

树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作&#xff0c;无需更改相机配置。但是&#xff0c;一…...

Java 语言特性(面试系列1)

一、面向对象编程 1. 封装&#xff08;Encapsulation&#xff09; 定义&#xff1a;将数据&#xff08;属性&#xff09;和操作数据的方法绑定在一起&#xff0c;通过访问控制符&#xff08;private、protected、public&#xff09;隐藏内部实现细节。示例&#xff1a; public …...

Xshell远程连接Kali(默认 | 私钥)Note版

前言:xshell远程连接&#xff0c;私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

vscode(仍待补充)

写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh&#xff1f; debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...

深入理解JavaScript设计模式之单例模式

目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式&#xff08;Singleton Pattern&#…...

电脑插入多块移动硬盘后经常出现卡顿和蓝屏

当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时&#xff0c;可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案&#xff1a; 1. 检查电源供电问题 问题原因&#xff1a;多块移动硬盘同时运行可能导致USB接口供电不足&#x…...

Mac软件卸载指南,简单易懂!

刚和Adobe分手&#xff0c;它却总在Library里给你写"回忆录"&#xff1f;卸载的Final Cut Pro像电子幽灵般阴魂不散&#xff1f;总是会有残留文件&#xff0c;别慌&#xff01;这份Mac软件卸载指南&#xff0c;将用最硬核的方式教你"数字分手术"&#xff0…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

高防服务器能够抵御哪些网络攻击呢?

高防服务器作为一种有着高度防御能力的服务器&#xff0c;可以帮助网站应对分布式拒绝服务攻击&#xff0c;有效识别和清理一些恶意的网络流量&#xff0c;为用户提供安全且稳定的网络环境&#xff0c;那么&#xff0c;高防服务器一般都可以抵御哪些网络攻击呢&#xff1f;下面…...