快手暑期实习测开一面
时间线
4.9投简历
4.12约面
4.15一面
—————————
4.17约二面
4.19二面
—————————
4.22 上午oc 没想到,以为还有一轮hr 面
4.23下午收到offer
—————————
主要就是问实习
实习公司开发、测试的流程
自己是怎么测试的
自己印象最深刻的bug 是什么,自己推测是什么原因,实际上是什么原因
三次握手
输入url 后发生了什么
简历内容
登录redis ➕token
rabbitMQ 发送短信验证码
根据发短信验证码来设计测试用例
sql 语句学生表返回成绩倒数第三名的所有信息
算法就是冒泡排序
🕒岗位/面试时间
4.9投简历
4.12约面
4.15一面
—————————
4.17约二面
4.19二面
—————————
4.22 上午oc 没想到,以为还有一轮hr 面
4.23下午收到offer
—————————
主要就是问实习
实习公司开发、测试的流程
自己是怎么测试的
自己印象最深刻的bug 是什么,自己推测是什么原因,实际上是什么原因
三次握手
输入url 后发生了什么
简历内容
登录redis ➕token
rabbitMQ 发送短信验证码
根据发短信验证码来设计测试用例
sql 语句学生表返回成绩倒数第三名的所有信息
算法就是冒泡排序
🕒岗位/面试时间
全部评论
功能测试用例:
发送验证码成功:
输入有效的手机号码并请求发送验证码。
验证是否收到了包含验证码的短信。
发送验证码失败:
输入无效的手机号码(格式不正确、无效号码等)并请求发送验证码。
验证系统是否返回适当的错误消息,并且没有发送验证码。
验证码内容验证:
验证收到的验证码是否与请求的一致。
验证验证码是否包含必要的信息,如有效期等。
验证码有效性验证:
使用收到的验证码进行验证。
确认系统是否成功验证了正确的验证码。
验证码失效验证:
等待验证码的有效期过期后尝试使用。
确认系统是否正确地拒绝了已失效的验证码。
验证码发送频率限制:
在短时间内多次请求发送验证码。
确认系统是否正确地限制了验证码发送的频率,并给出适当的错误消息。
验证码验证尝试次数限制:
多次使用错误的验证码进行验证。
确认系统是否正确地限制了验证码验证的尝试次数,并在达到限制时给出适当的错误消息。
网络连接问题:
在网络连接不稳定或不可用的情况下尝试发送验证码。
确认系统是否能够正确地处理网络连接问题,并给出适当的提示或错误消息。
安全性验证:
确认验证码在传输过程中是否加密。
确认系统是否有防止暴力破解的机制,如限制验证码验证的次数和频率。
验证码随机性验证:
连续请求多次发送验证码。
验证每次收到的验证码是否都是随机生成的。
确认系统不会连续生成相同的验证码。
验证码验证后自动失效:
使用有效的手机号码请求发送验证码,并等待接收验证码。
输入正确的验证码进行验证,并确保验证通过。
等待验证码的有效期过期后尝试再次使用相同的验证码进行验证。
确认系统是否正确地拒绝了已失效的验证码。
输入URL后,浏览器通过DNS解析获取服务器IP地址,建立TCP连接,发送HTTP请求,服务器处理请求后返回响应,浏览器接收并渲染页面。
我曾遇到的一个印象深刻的死锁 bug 是在一个多线程应用程序中。这个应用程序使用了多个线程来执行不同的任务,并且这些任务之间存在一定的依赖关系。
在某个时刻,我添加了一个新的功能,这个功能需要访问两个共享资源,并且在访问它们时需要获取两个不同的锁。在测试过程中,应用程序有时能够正常运行,但有时会陷入死锁状态,无法继续执行。
我最初的推测是可能是某个线程没有正确释放锁,导致其他线程无法获取到所需的锁而陷入死锁。因此,我检查了所有的加锁和解锁操作,并确保它们在正确的地方被调用。
然而,问题仍然存在。最终,通过仔细分析程序逻辑,我发现了一个隐藏的依赖关系。当某个线程持有第一个锁并尝试获取第二个锁时,同时另一个线程也持有了第二个锁并尝试获取第一个锁,导致了死锁。
解决这个 bug 的关键是重新设计程序逻辑,以消除这种循环依赖关系。我将两个锁的获取顺序统一,并确保线程在访问共享资源时按照相同的顺序获取锁,从而成功地解决了死锁问题。
CREATE TABLE Students (
StudentID INT AUTO_INCREMENT PRIMARY KEY,
Name VARCHAR(50),
Score INT
);
INSERT INTO Students (Name, Score) VALUES ('Alice', 90);
INSERT INTO Students (Name, Score) VALUES ('Bob', 85);
INSERT INTO Students (Name, Score) VALUES ('Charlie', 80);
INSERT INTO Students (Name, Score) VALUES ('David', 75);
INSERT INTO Students (Name, Score) VALUES ('Eva', 70);
INSERT INTO Students (Name, Score) VALUES ('Frank', 65);
INSERT INTO Students (Name, Score) VALUES ('Grace', 60);
INSERT INTO Students (Name, Score) VALUES ('Henry', 55);
INSERT INTO Students (Name, Score) VALUES ('Ivy', 50);
INSERT INTO Students (Name, Score) VALUES ('Jack', 45);
SELECT *
FROM Students
WHERE Score = (
SELECT DISTINCT Score
FROM Students
ORDER BY Score DESC
LIMIT 1 OFFSET 2
);

手撕代码是核心代码模式还是acm模式呀,要不要自己写输入输出呢
佬有二面消息了吗
咱们同一天一面诶,佬base哪里
def bubble_sort_optimized(arr):
n = len(arr)
for i in range(n):
swapped = False
for j in range(0, n-i-1):
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
swapped = True
if not swapped:
break
return arr
arr = [64, 34, 25, 12, 22, 11, 90]
sorted_arr = bubble_sort_optimized(arr)
print("排序后的数组:", sorted_arr)
测开简历怎么写啊
佬bg是啥呀
佬什么bg
相关推荐
05-15 14:59
郑州大学 新媒体运营 点赞 评论 收藏
分享
04-15 23:42
中山大学 Java 点赞 评论 收藏
分享