軟體面試體總結待完善

憂鬱,灑脫發表於2019-04-18

面試問題補充

  • 面:首先自我介紹,做過哪些專案,承擔什麼職務?

我:畢業於某大學,主要做銀行系統,一枚軟體測試工程師,熟悉軟體測試流程,編寫測試案例、執行案例、編寫測試報告、評審文件、會使qc等,瞭解效能測試等。

  • 面:說一下為什麼離職?

我:公司是某二線城市的,目前在出差,想一直待北京,然後就離職。

面:說下軟體測試流程?

我:首先需求分析,摘出測試點,其次編寫測試案例、其次執行案例記錄bug狀態、出測試報告。

面:面試官看著桌旁有張A4紙,說一下A4紙的測試思路?

我:紙的質地:紙還是布;

紙的尺寸:標準A4尺寸還是32開;

紙的相容性:鉛筆、鋼筆、中性筆都能寫;

紙的類別:白紙還是草稿紙;

紙的安全性:是否含有毒物質;

紙的擴充套件性:是否能摺疊;

紙的效能:吸油性是否強等。

面:嗯,還不錯,缺陷分5個等級,分別用英文說一下?

我:致命、嚴重、一般、微小、建議;

面:Severity、Blocker、Critical(嚴重的)、Major(主要的)、Minor(小的)、Trivial(細枝末節),舉個你遇到的缺陷blocker級別的,你不會不認識這個單詞吧,你英語太差了。 嚴重程度(Severity) 1.Blocker: 即系統無法執行、崩潰或嚴重資源不足、應用模組無法啟動或異常退出、無法測試、造成系統不穩定。

嚴重花屏 記憶體洩漏 使用者資料丟失或破壞 系統崩潰/當機/凍結 模組無法啟動或異常退出 嚴重的數值計算錯誤 功能設計與需求嚴重不符 其它導致無法測試的錯誤, 如伺服器500錯誤

2.Critical:即影響系統功能或操作,主要功能存在嚴重缺陷,但不會影響到系統穩定性。

功能未實現 功能錯誤 系統重新整理錯誤 資料通訊錯誤 輕微的數值計算錯誤 影響功能及介面的錯誤字或拼寫錯誤 安全性問題

3.Major:即介面、效能缺陷、相容性。

操作介面錯誤(包括資料視窗內列名定義、含義是否一致) 邊界條件下錯誤 提示資訊錯誤(包括未給出資訊、資訊提示錯誤等) 長時間操作無進度提示 系統未優化(效能問題) 游標跳轉設定不好,滑鼠(游標)定位錯誤 相容性問題

4.Minor/Trivial:即易用性及建議性問題。

介面格式等不規範 輔助說明描述不清楚 操作時未給使用者提示 可輸入區域和只讀區域沒有明顯的區分標誌 個別不影響產品理解的錯別字 文字排列不整齊等一些小問題

優先順序(Priority) 1.Immediate

即“馬上解決”,表示問題必須馬上解決,否則系統根本無法達到預定的需求。

  1. Urgent

即“急需解決”,表示問題的修復很緊要,很急迫,關係到系統的主要功能模組能否正常。

  1. High

即“高度重視”,表示有時間就要馬上解決,否則系統偏離需求較大或預定功能不能正常實現。

  1. Normal

即“正常處理”,進入個人計劃解決,表示問題不影響需求的實現,但是影響其他使用方面,比如頁面呼叫出錯,呼叫了錯誤的等。

  1. Low

即”低優先順序”,即問題在系統釋出以前必須確認解決或確認可以不予解決。

面:在你看來什麼是缺陷,你為什麼認為它就是缺陷?用自己的話總結一下。

我:實現了需求說明書中未提到的功能等。他說用你的生活描述一下,當時直接懵了,不知道是什麼意思。其實我覺得還是參考《軟體測試第二版》書中的答案,沒見過比這更全的解釋。

面:你認為什麼樣的缺陷算是嚴重的?

我:未實現需求說明書中的重要模組、系統執行當機、丟失資料等。

面:畫一下缺陷狀態的扭轉流程;

我:缺陷狀態分為:提出、無效、已分配、待驗證、已解決。然後在紙上畫了一下。

面:說一下你公司專案的架構是什麼,最長的鏈路是什麼。

我:終端機發應用伺服器發資料庫伺服器,資料庫返回值給應用展現在終端機。最長鏈路:手機銀行—前置—支付寶—前置—資料組—主機。

面:drop 和trucate有什麼區別?

我:drop是刪除表結構,trucate是刪掉表裡的所有資料

  • 面:內連線和外連線有什麼區別?

  • 面:說一下你精通哪門語言?

  • 主要使用http、socket協議做了理財、基金、支付寶專案

  • 面:有些渠道交易是沒有圖形化介面的,就是需要寫指令碼。

    我:哦,這樣可以直接從日誌裡擷取傳送報文、接收報文,除錯一下就好了。

    面:說一下loadrunner的日誌函式的區別。

    面:我們小公司使的是jmeter,說一下引數取值有哪幾種?

    我:我只用過loadrunner,我說一下這個工具的取值,random、unique、occrounce

    面:你做的socket專案用的是長連線還是短連線?

    面:遇到哪些效能瓶頸、怎麼解決的?

    我:磁碟交換率大99%,建議負載均衡;sql執行時間長,新增索引等;

    面:用過linux吧,如何修改檔案,如何切換使用者?

    我:view開啟,x刪除,按esc,按i輸入內容,按esc,最後按 :wq!切換使用者:su - 使用者名稱

    面:會寫shell指令碼嗎?

    面:為什麼離職,你還想了解什麼情況

    我:離職問題已說過了,這裡不再重複,主要做什麼專案,資料庫、linux這些能接觸到嗎?需要做效能測試嗎?

測試用例設計/測試流程 測試用例設計,面試官基本會給出一個場景,例如:一個登入註冊頁面;一個結算購物車商品的操作;一個ATM機;聊天視窗傳送圖片的動作;頁面右鍵點選彈出一個彈窗的操作等等,要求設計出你的測試case,正常情況,測試case都要基於需求文件去設計,沒有需求文件就沒有標準準備的case也是沒有意義的;面試題多是依據大多數人都理解熟知的功能去給一個測試場景所以大多可以拋開需求依據常識去設計case。這類問題我覺得可以大概分兩個方面去考慮就基本可以回答好。

功能方面;思考這些場景的開始、執行、結束的每一步操作,涉及哪些內容,每一塊內容操作等等依據設計case的方法(等價類、邊界值等)去梳理。 效能、介面、安全、異常情況、網路環境、適配方面;無網/弱網/2G/3G/4G情況下,介面的處理情況以及介面返回內容對頁面/端產生的影響,多終端、多瀏覽器、多種環境的影響情況。

測試流程:測試人員參與到產品的一個迭代過程,需求開始至結束測試要全程跟進,需求分析/評審->開發方案->測試用例設計/評審>需求變更/評審>開發調整開發方案~>修改測試用例->執行測試->提交bug/bug狀態處理->測試完成/測試報告->釋出->驗證 考察測試人員的基本測試理論的掌握情況、測試方法、邏輯的清晰度。

自動化 面試官大多會依據求職的工作經歷詢問之前的專案工作內容來判斷你是否做過這些內容,做到什麼樣的一個程度等等。 介面自動化是怎麼做的?用的什麼語言?用的哪些框架?介面測試過程中注重哪些點?UI自動化web的用的什麼?移動端的用的什麼?你用的工具的原理了解嗎?用過多種工具他們的區別是什麼?你在做這些工作的時候遇到過哪些比較難解決的事情最後是怎麼解決的?最終的效果怎麼樣?給一個新的場景要你開展自動化你要怎麼著手?怎麼設計?結果怎麼生成報告?怎麼及時通知相關人員?如果出錯了怎麼及時定位原因?怎麼實現CI?自動化的意義?你個人的見解? Linux命令 舉例:

find / -name file.txt 查詢/目錄下的file.txt檔案 find . -name file.txt 查詢所有的file.txt檔案 find . -name "*.txt" | xargs grep "Hello World" 遞迴查詢檔案內容中包含Hello World的txt檔案 netstat -tln | grep 8080 查詢埠為8080的使用情況 lsof -i :8080 檢視8080埠屬於哪個程式 ps –ef | grep android 檢視所有android相關程式 cp -r sourceFolder targetFolder 拷貝資料夾所有檔案 chmod 777 修改檔案許可權 tar -cvf jpg.tar *.jpg 將目錄裡所有jpg檔案打包成tar tar -xzvf tar.gz //解壓tar.gz head -n 10 example.txt 檢視檔案前十行內容 tail -n 10 example.txt 檢視檔案後十行內容 tail -f exmaple.log 自動顯示新增內容 less exmaple.log scp local_file remote_username@remote_ip:remote_folder 把本地檔案複製到遠端 scp -r root@123.1.1.1:/home/root/others/1.txt 把遠端檔案複製到本地

資料庫操作 oracle/MySQL 基本增刪改查 多表操作 演算法 一個字串如何倒序輸出(多種方法) 依次從高位到低位輸出一個整型資料的每一位上的數字 判斷字串str1中包含幾個str2輸入起始位置 讀一個文字檔案,替換檔案中所有內容".txt"為".json" 其他(記錄遇到的問題)

Python 元組的特性 插樁 github 提交衝突怎麼解決 android 四大元件,activity生命週期, 出現OOM如何處理 抓包工具Charles、flidder的使用 http工作原理,與https的區別 正規表示式校驗郵箱、手機號 職業發展規劃等

個人介紹 當你面試測試時最重要的是,哪年畢業的,參加工作幾年了,我是誰,我上家公司是誰,公司做的專案是什麼,我負責哪個模組,寫測試用例用的什麼方法,在測試中,用到了哪些測試工具,我最擅長的是功能測試,效能測試,自動化測試,以及你是怎麼操作的,幾乎這樣的介紹,涵蓋了面試官想聽專案經驗的重點。記你覺得你個性的有點是什麼? 回答提示:沉著冷靜、條理清楚、立場堅定、頑強向上。 樂於助人和關心他人、適應能力和幽默感、樂觀和友愛。我經過一到兩年的培訓及專案實戰,加上實習工作,使我適合這份工作。我相信我能成功。說說你最大的缺點?回答提示:這個問題企業問的概率很大,通常不希望聽到直接回答的缺點是什麼等,如果求職者說自己小心眼、愛忌妒人、非常懶、脾氣大、工作效率低,企業肯定不會錄用你。絕對不要自作聰明地回答“我最大的缺點是過於追求完美”,有的人以為這樣回答會顯得自己比較出色,但事實上,他已經岌芨可危了。企業喜歡求職者從自己的優點說起,中間加一些小缺點,最後再把問題轉回到優點上,突出優點的部分。企業喜歡聰明的求職者。你對加班的看法?回答提示:實際上好多公司問這個問題,並不證明一定要加班。只是想測試你是否願意為公司奉獻。回答樣本:如果是工作需要我會義不容辭加班。我現在單身,沒有任何家庭負擔,可以全身心的投入工作。但同時,我也會提高工作效率,減少不必要的加班記你對薪資的要求?回答提示:如果你對薪酬的要求太低,那顯然貶低自己的能力;如果你對薪酬的要求太高,那又會顯得你分量過重,公司受用不起。一些僱主通常都事先對求聘的職位定下開支預算,因而他們第一次提出的價錢往往是他們所能給予的最高價錢。他們問你只不過想證實一下這筆錢是否足以引起你對該工作的興趣。 回答樣本一:“我對工資沒有硬性要求。我相信貴公司在處理我的問題上會友善合理。我注重的是找對工作機會,所以只要條件公平,我則不會計較太多回答樣本二:我受過系統的軟體程式設計的訓練,不需要進行大量的培訓。而且我本人也對程式設計特別感興趣。因此,我希望公司能根據我的情況和市場標準的水平,給我合理的薪水。回答樣本三:如果你必須自己說出具體數目,請不要說一個寬泛的範圍,那樣你將只能得到最低限度的數字。最好給出一個具體的數字,這樣表明你已經對當今的人才市場作了調查,知道像自己這樣學歷的僱員有什麼樣的價值。你的職業規劃?回答提示:這是每一個應聘者都不希望被問到的問題,但是幾乎每個人都會被問到。比較多的答案是“管理者”。但是近幾年來,許多公司都已經建立了專門的技術途徑。這些工作地位往往被稱作“顧問”、“參議技師”或“高階軟體工程師”等等。當然,說出其他一些你感興趣的職位也是可以的,比如產品銷售部經理,生產部經理等一些與你的專業有相關背景的工作。要知道,考官總是喜歡有進取心的應聘者,此時如果說“不知道”,或許就會使你喪失一個好機會。最普通的回答應該是“我準備在技術領域有所作為”或“我希望能按照公司的管理思路發展”。你朋友對你的評價?回答提示:想從側面瞭解一下你的性格及與人相處的問題回答樣本:“我的朋友都說我是一個可以信賴的人。因為,我一旦答應別人的事情,就一定會做到。如果我做不到,我就不會輕易許諾。回答樣本:”我覺的我是一個比較隨和的人,與不同的人都可以友好相處。在我與人相處時,我總是能站在別人的角度考慮問題“你還有什麼問題要問嗎?回答提示:企業的這個問題看上去可有可無,其實很關鍵,企業不喜歡說“沒有問題”的人,因為其很注重員工的個性和創新能力。企業不喜歡求職者問個人福利之類的問題,如果有人這樣問:貴公司對新入公司的員工有沒有什麼培訓專案,我可以參加嗎?或者說貴公司的晉升機制是什麼樣的?企業將很歡迎,因為體現出你對學習的熱情和對公司的忠誠度以及你的上進心。

以上是我在被面試和麵試過程中總結出來的一點小小的經驗,接下來是大神給我介紹的內容,STAR法則來回答面試問題:S:Situation,形勢,情景。提供上下文和背景,例如“我們的客戶抱怨……”T:Task,任務,問題。描述問題和挑戰,例如“我們面臨供應鏈短缺……”A:Action,行動,努力。解釋你做了什麼,和如何做的,例如“我們解決了……我們處理了……”R:Results,結果。陳述結局帶來的好處,挽救的內容,獲得的獎項,提高的認識等。例如“這個帶來的影響是……STAR 法則解釋

軟體面試體總結待完善
專案經驗S:做這個專案的背景大致介紹T:這個專案裡面的任務都有哪些A:在這個專案中做了什麼R:做的努力,最終的結果如何面試問答S:需要明確面試官問題的大致背景,以便針對性的描述T:面試官的問題,這裡需要從問題澄清問題的前提和背景A:解釋你如何處理和應對這個問題R:繼續描述你這個處理可能帶來的結果end

  • 自我介紹(考察你的表達能力)
  • 什麼是軟體測試?
  • 測試的流程?(每個公司都有自己不同的測試流程)
  • 測試方法(邊界值、等價類、因果圖、冒煙測試、白盒和黑盒測試區別)
  • 如何測試?(重要的是看介面,會通過跳板機檢視介面,定位前後端bug)
  • 給你一個功能,如何設計測試用例。
  • bug管理工具,一般都是bugfree、jira、等
  • 測試用例都包括什麼(case優先順序、平臺、測試模組、子模組、測試點、前值條件、測試步驟、期望步驟、結果、bug號)
  • 是否有程式碼經驗
  • android的四大組建
  • 什麼是相容性測試
  • bug裡面都包含哪些內容
  • 測試過程中遇到開發的程式碼跟產品的需求不一致該怎麼處理?(叫上開發和產品一起討論最終結果)
  • bug缺陷的生命週期
  • 你提交的bug被研發拒絕怎麼辦?
  • 你用過哪些測試工具 fiddler,charles、
  • 對自動化的認識,是否會自動化
  • 資料庫簡單的增刪改查
  • 常用的linux命令
  • 軟體測試的分類
  • 移動端測試和pc測試區別
  • 為什麼辭職
  • 下一份工作期望
  • 未來3年、5年內的個人規劃

相關文章