百度-測(cè)試開發(fā)實(shí)習(xí)生-25屆實(shí)習(xí)一面
百度存儲(chǔ)測(cè)試組,base北京。 #百度# #實(shí)習(xí)# #面經(jīng)#
面試體驗(yàn):面試官是一位小姐姐,沒有開攝像頭,很溫柔很有耐心,遇到卡殼的地方會(huì)引導(dǎo),沒說全的答案小姐姐也會(huì)補(bǔ)充。贊一個(gè)。
———— 一面(60min+) ————
1. 自我介紹。
2. 為什么要考慮換下現(xiàn)在在蔚來的工作?
3. 最早實(shí)習(xí)時(shí)間?
4. 選一個(gè)你熟悉的項(xiàng)目介紹一下。
5. 做這個(gè)項(xiàng)目的初衷是?
6. 登錄和注冊(cè)這兩個(gè)模塊的測(cè)試用例你會(huì)怎么設(shè)計(jì)?
7. 解釋一下什么是oop面向?qū)ο缶幊獭?br />8. 了解哪些oop的設(shè)計(jì)原則?就單例模式和工廠模式其中一個(gè)解釋一下。
9. 列舉一下你平常用的比較多的Linux的命令。
10. Linux命令提問:
1. 本地和遠(yuǎn)程服務(wù)器之間傳輸文件的是什么。
2. 查找文件名包含某個(gè)關(guān)鍵字的文件。
3. 軟連接和硬連接它們有什么區(qū)別?
11. 介紹一下5層網(wǎng)絡(luò)模型。
12. 在瀏覽器里輸入一個(gè)HTTP的URL地址之后顯示頁面,其中的流程如何。
13. TCP為什么一定要有三次握手,而不是兩次呢?
14. MySQL基本的增刪改查語法。
15. MySQL提問:
1. 模糊查找姓王的所有學(xué)生。
2. 再按照成績進(jìn)行排序,取前三個(gè)。
3. having和where的區(qū)別。
16. 編程題:校驗(yàn)合法的IPV4地址。
17. 邏輯題:7米深的井,有一只蝸牛從井底往上爬,白天向上爬三米,晚上向下掉兩米。算一下它幾天能爬到井口。
18. 對(duì)Python熟悉嗎?接觸過自動(dòng)化測(cè)試嗎?
19. 你之前做自動(dòng)化用的是什么框架?寫過接口自動(dòng)化測(cè)試代碼嗎?
20. 最近在學(xué)習(xí)什么,一般如何學(xué)習(xí)?
21. 以后職業(yè)規(guī)劃是?
22. 為什么不考慮去做開發(fā)?你未來是打算在互聯(lián)網(wǎng)行業(yè)嗎?
23. 反問。
——————————
三天后問了面試官才得知一面通過。
面試體驗(yàn):面試官是一位小姐姐,沒有開攝像頭,很溫柔很有耐心,遇到卡殼的地方會(huì)引導(dǎo),沒說全的答案小姐姐也會(huì)補(bǔ)充。贊一個(gè)。
———— 一面(60min+) ————
1. 自我介紹。
2. 為什么要考慮換下現(xiàn)在在蔚來的工作?
3. 最早實(shí)習(xí)時(shí)間?
4. 選一個(gè)你熟悉的項(xiàng)目介紹一下。
5. 做這個(gè)項(xiàng)目的初衷是?
6. 登錄和注冊(cè)這兩個(gè)模塊的測(cè)試用例你會(huì)怎么設(shè)計(jì)?
7. 解釋一下什么是oop面向?qū)ο缶幊獭?br />8. 了解哪些oop的設(shè)計(jì)原則?就單例模式和工廠模式其中一個(gè)解釋一下。
9. 列舉一下你平常用的比較多的Linux的命令。
10. Linux命令提問:
1. 本地和遠(yuǎn)程服務(wù)器之間傳輸文件的是什么。
2. 查找文件名包含某個(gè)關(guān)鍵字的文件。
3. 軟連接和硬連接它們有什么區(qū)別?
11. 介紹一下5層網(wǎng)絡(luò)模型。
12. 在瀏覽器里輸入一個(gè)HTTP的URL地址之后顯示頁面,其中的流程如何。
13. TCP為什么一定要有三次握手,而不是兩次呢?
14. MySQL基本的增刪改查語法。
15. MySQL提問:
1. 模糊查找姓王的所有學(xué)生。
2. 再按照成績進(jìn)行排序,取前三個(gè)。
3. having和where的區(qū)別。
16. 編程題:校驗(yàn)合法的IPV4地址。
17. 邏輯題:7米深的井,有一只蝸牛從井底往上爬,白天向上爬三米,晚上向下掉兩米。算一下它幾天能爬到井口。
18. 對(duì)Python熟悉嗎?接觸過自動(dòng)化測(cè)試嗎?
19. 你之前做自動(dòng)化用的是什么框架?寫過接口自動(dòng)化測(cè)試代碼嗎?
20. 最近在學(xué)習(xí)什么,一般如何學(xué)習(xí)?
21. 以后職業(yè)規(guī)劃是?
22. 為什么不考慮去做開發(fā)?你未來是打算在互聯(lián)網(wǎng)行業(yè)嗎?
23. 反問。
——————————
三天后問了面試官才得知一面通過。
全部評(píng)論
正常場(chǎng)景下的測(cè)試用例:
注冊(cè)模塊:
1. **基本功能測(cè)試:**
- 輸入有效的用戶名、密碼(符合長度、復(fù)雜度等要求)、郵箱/手機(jī)號(hào)等必要信息,驗(yàn)證注冊(cè)成功。
2. **用戶名唯一性測(cè)試:**
- 使用已存在的用戶名進(jìn)行注冊(cè),驗(yàn)證系統(tǒng)是否給出“用戶名已存在”的提示并阻止注冊(cè)。
3. **密碼強(qiáng)度驗(yàn)證:**
- 輸入不同強(qiáng)度的密碼(弱、中、強(qiáng)),驗(yàn)證系統(tǒng)是否正確提示密碼強(qiáng)度,例如是否提示密碼過于簡單。
4. **賬戶驗(yàn)證:**
- 測(cè)試注冊(cè)成功后,系統(tǒng)是否發(fā)送了確認(rèn)郵件/短信,并驗(yàn)證用戶是否可以通過點(diǎn)擊鏈接/輸入驗(yàn)證碼完成賬戶驗(yàn)證。
#### 登錄模塊:
1. **基本功能測(cè)試:**
- 使用已注冊(cè)的有效用戶名和密碼進(jìn)行登錄,驗(yàn)證登錄成功并跳轉(zhuǎn)到相應(yīng)頁面。
2. **用戶狀態(tài)更新:**
- 驗(yàn)證登錄成功后,用戶狀態(tài)(如登錄時(shí)間、登錄IP等)是否更新。
3. **跨頁面登錄狀態(tài)保持:**
- 測(cè)試登錄狀態(tài)是否在不同頁面間保持,如用戶從一個(gè)頁面跳轉(zhuǎn)到另一個(gè)頁面時(shí),是否仍保持登錄狀態(tài)。
4. **安全性測(cè)試:**
- 檢查系統(tǒng)是否使用了HTTPS,以確保登錄過程中的數(shù)據(jù)傳輸安全。
- 驗(yàn)證系統(tǒng)是否對(duì)密碼進(jìn)行了加密存儲(chǔ),以保障用戶信息安全。
異常場(chǎng)景下的測(cè)試用例:
注冊(cè)模塊:
1. **重復(fù)注冊(cè)驗(yàn)證:**
- 嘗試使用已存在的用戶名進(jìn)行注冊(cè),驗(yàn)證系統(tǒng)是否給出“用戶名已存在”的提示并阻止注冊(cè)。
2. **無效數(shù)據(jù)處理:**
- 輸入無效數(shù)據(jù)(如空值、非法字符)進(jìn)行注冊(cè),驗(yàn)證系統(tǒng)是否給出相應(yīng)的錯(cuò)誤提示。
3. **密碼強(qiáng)度要求驗(yàn)證:**
- 輸入不符合密碼強(qiáng)度要求的密碼,驗(yàn)證系統(tǒng)是否提示用戶修改密碼。
4. **異常情況處理:**
- 測(cè)試注冊(cè)過程中可能存在的其他異常,如網(wǎng)絡(luò)中斷、服務(wù)器故障等。
登錄模塊:
1. **用戶名不存在驗(yàn)證:**
- 使用不存在的用戶名進(jìn)行登錄,驗(yàn)證系統(tǒng)是否給出“用戶名不存在”的提示。
2. **密碼錯(cuò)誤驗(yàn)證:**
- 使用正確的用戶名但錯(cuò)誤的密碼進(jìn)行登錄,驗(yàn)證系統(tǒng)是否給出“密碼錯(cuò)誤”的提示,并限制嘗試次數(shù)以防止暴力破解。
3. **無效數(shù)據(jù)處理:**
- 輸入無效數(shù)據(jù)(如空值、非法字符)進(jìn)行登錄,驗(yàn)證系統(tǒng)是否給出相應(yīng)的錯(cuò)誤提示。
4. **自動(dòng)失效登錄狀態(tài):**
- 測(cè)試長時(shí)間未操作后,系統(tǒng)是否自動(dòng)失效登錄狀態(tài),并要求用戶重新登錄。
5. **多設(shè)備/異地登錄安全性驗(yàn)證:**
- 測(cè)試多設(shè)備或異地登錄時(shí),系統(tǒng)是否發(fā)送登錄通知或要求用戶進(jìn)行二次驗(yàn)證,以提高賬戶安全性。
**單例模式**的例子:
假設(shè)有一個(gè)日志管理器類,我們希望在整個(gè)應(yīng)用程序中只有一個(gè)日志管理器實(shí)例,以確保日志的一致性和節(jié)省系統(tǒng)資源。這就是單例模式的典型應(yīng)用場(chǎng)景,它確保了一個(gè)類只有一個(gè)實(shí)例。
**工廠模式**的例子:
假設(shè)有一個(gè)圖形類,可以創(chuàng)建不同類型的圖形對(duì)象,比如矩形和圓形。我們可以創(chuàng)建一個(gè)圖形工廠類,根據(jù)客戶端的請(qǐng)求來創(chuàng)建相應(yīng)類型的圖形對(duì)象。工廠模式封裝了對(duì)象的創(chuàng)建過程,使客戶端無需直接實(shí)例化對(duì)象,而是通過工廠來創(chuàng)建所需類型的對(duì)象。
1. **形式存在**:
- 軟鏈接:以路徑的形式存在。
- 硬鏈接:以文件副本的形式存在,但不占用實(shí)際空間。
2. **跨文件系統(tǒng)**:
- 軟鏈接:可以跨文件系統(tǒng)。
- 硬鏈接:不可以跨文件系統(tǒng)。
3. **鏈接不存在的文件**:
- 軟鏈接:可以對(duì)一個(gè)不存在的文件名進(jìn)行鏈接。
- 硬鏈接:只有在同一個(gè)文件系統(tǒng)中才能創(chuàng)建。
4. **鏈接目錄**:
- 軟鏈接:可以對(duì)目錄進(jìn)行鏈接。
- 硬鏈接:不允許給目錄創(chuàng)建鏈接。
五層網(wǎng)絡(luò)模型是計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)的基本結(jié)構(gòu)模型,包括物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層和應(yīng)用層。這五層每一層都有其特定的功能和任務(wù),并且與相鄰的層進(jìn)行通信。
物理層負(fù)責(zé)傳輸比特流的硬件部分,包括各種傳輸介質(zhì)和傳輸設(shè)備。數(shù)據(jù)鏈路層在物理層的傳輸介質(zhì)上傳送數(shù)據(jù)幀,并在源主機(jī)和目的主機(jī)之間建立邏輯鏈路。網(wǎng)絡(luò)層負(fù)責(zé)在多個(gè)主機(jī)之間傳送數(shù)據(jù)包,并提供路由選擇功能。傳輸層則在源主機(jī)和目的主機(jī)之間提供端到端的數(shù)據(jù)傳輸服務(wù)。應(yīng)用層則是計(jì)算機(jī)用戶以及各種應(yīng)用程序與網(wǎng)絡(luò)之間的接口,負(fù)責(zé)向用戶提供網(wǎng)絡(luò)服務(wù),如文件傳輸、電子郵件、遠(yuǎn)程登錄等。
前4天蝸牛爬升了4米,第5天白天開始時(shí),它距離井口還有3米,白天它能爬3米,總共達(dá)到7米,這時(shí)它已經(jīng)爬出井口,所以不需要再等到晚上滑下去。因此,只需要5天。
在兩次握手中,客戶端發(fā)送連接請(qǐng)求給服務(wù)器,服務(wù)器接受連接并確認(rèn),然后連接就建立了。但是,這個(gè)過程中存在兩個(gè)主要問題:
1. **連接重放攻擊**:攻擊者可以截獲之前的連接請(qǐng)求并將其重放給服務(wù)器。由于服務(wù)器無法確定這個(gè)連接請(qǐng)求是否是合法的,它可能會(huì)錯(cuò)誤地將其視為合法請(qǐng)求,導(dǎo)致安全問題。
2. **無法區(qū)分重復(fù)連接請(qǐng)求**:服務(wù)器無法可靠地區(qū)分新的連接請(qǐng)求和之前已經(jīng)接收過的重復(fù)連接請(qǐng)求。這可能導(dǎo)致服務(wù)器混淆,無法正確處理重復(fù)的連接請(qǐng)求。
因此,兩次握手存在安全和可靠性方面的問題。
而三次握手通過引入第三次握手來解決這些問題,提高了連接的安全性和可靠性。在第三次握手中,服務(wù)器可以驗(yàn)證連接請(qǐng)求的真實(shí)性,并確認(rèn)連接狀態(tài),從而避免了連接重放攻擊和重復(fù)連接請(qǐng)求的問題。
創(chuàng)建軟鏈接使用 `ln -s 源文件 目標(biāo)文件` 命令,創(chuàng)建硬鏈接使用 `ln 源文件 目標(biāo)文件` 命令。
怎么聯(lián)系的面試官呀
NIO社招內(nèi)推碼:MNCVJBQ
投遞鏈接:https://nio.jobs.feishu.cn/s/iYYjayay
NIO校招內(nèi)推碼:MNCVJBQ
投遞鏈接:https://nio.jobs.feishu.cn/s/iYY6g1mc
相關(guān)推薦
05-08 10:41
延安大學(xué) C++ 
點(diǎn)贊 評(píng)論 收藏
分享
05-06 11:50
北京郵電大學(xué) 移動(dòng)通訊工程師 點(diǎn)贊 評(píng)論 收藏
分享
04-23 11:13
中國地質(zhì)大學(xué)(武漢) Java 點(diǎn)贊 評(píng)論 收藏
分享
04-12 13:48
哈爾濱理工大學(xué) 語音/視頻/圖形開發(fā) 點(diǎn)贊 評(píng)論 收藏
分享
點(diǎn)贊 評(píng)論 收藏
分享