【我給面試官畫餅】軟件測試理論基礎(chǔ)、質(zhì)量保證常見面試題——這都不會,會被面試官趕出來嗎?

軟件測試理論基礎(chǔ)、質(zhì)量保證常見面試題

全面掌握軟件測試理論基礎(chǔ)、文檔編寫,測試流程

1.測試分為哪幾個階段?

2.談談你之前測試的項目流程,在每個階段的輸出有哪些?

3.談談敏捷模式的認識?

4.linux常見查看日志命令有哪些?

5.線上質(zhì)量BUG頻頻爆發(fā)怎么辦?

6.如何分析一個bug是前端還是后端的問題?

全面掌握軟件測試理論基礎(chǔ)、文檔編寫,測試流程

大家好,我是一凡,很高興認識你!終于開通了全中國最大的程序員交流社區(qū)——CSDN的博客。往后會給大家?guī)砀嗟膶W習資源以及最新資訊,歡迎關(guān)注我的?微信公眾號:程序員一凡

軟件測試技術(shù)交流群:1079636098?軟件測試需要的安裝包免費獲取,最新一線大廠面試題免費領(lǐng)取。

不管你現(xiàn)在做軟件測試,在什么級別。

軟件測試理論基礎(chǔ)和軟件質(zhì)量保證問題,面試的時候絕對是離不開的。

軟件測試這一個行業(yè)離開了業(yè)務就失去了靈魂。

一切的自動化、一切的編程、一些軟件測試工具,都是輔助測試為主。

我們最終的目的是保證我們產(chǎn)品的質(zhì)量。

所以不管什么樣級別的軟件測試工程師,你得全面掌握軟件測試理論基礎(chǔ)、文檔的編寫、測試流程。

如果說我是面試官,你現(xiàn)在來面試。

那我第一個肯定不會問你那些代碼的問題,也不會問你自動化的問題,也不會問你測試開發(fā)的問題。

我首先看你做了幾年軟件測試,有沒有屬于自己的一些軟件測試思維,有沒有自己的心得。

比如說像軟件測試分為哪幾個階段?然后你之前測試過的項目流程,在每一個階段的輸出有哪些?是怎么樣去執(zhí)行的,你在軟件測試過程中充當?shù)慕巧?/p>

這一類軟件測試面試題,根據(jù)你的回答,就能知道你有沒有工作經(jīng)驗。你對軟件測試的認知,你對自己崗位的職責,對自己的定位是否準確。

都是一些比較綜合性的問題。

現(xiàn)在都是一個敏捷開發(fā)的模式,很多公司都是用敏捷開發(fā),那么你能談一談這個敏捷開發(fā)嗎?

大家不要局限于很傳統(tǒng)的問題,什么是測試計劃啊,什么是測試用例編寫等等。

敏捷開發(fā)現(xiàn)在也是屬于軟件測試基礎(chǔ)理論的一個理念。

然后Linux常見的查看日志命令有哪些?這也是比較基礎(chǔ)的一些東西了。你至少要會查看開發(fā)的日志,會數(shù)據(jù)庫。

然后我問你,線上質(zhì)量BUG頻頻爆發(fā)怎么辦?你做為一個測試你該怎么去應對?像這些都是比較綜合性的問題,都是考驗你在工作中的經(jīng)驗于心得。

你做過多少項目,你在遇到這些問題你是如何處理的。

這些問題你一定要能夠很全面的表述出來。

比如說我現(xiàn)在是面試官,我第一個肯定不會去問你哪些代碼的問題,也不會問你自動化、測試開發(fā)的問題。

第一個考查的肯定是你做了幾年測試,有沒有自己的測試思維?有沒有自己的一些心得。

前三個問題就能夠知道你有沒有工作經(jīng)驗,你在工作中承擔一個什么樣的角色、你的職責你的輸出在哪里。都是一些比較綜合性的問題。

1.測試分為哪幾個階段?

軟件測試是貫穿整個軟件生命周期的,軟件測試的對象包括軟件需求、概要設(shè)計、詳細設(shè)計、軟件運行環(huán)境、可運行程序和軟件源代碼等。

軟件測試包括質(zhì)量、人員、資源、技術(shù)和流程五大要素,以及測試覆蓋率和測試效率兩個目標。

那么軟件測試究竟又分為哪幾個階段呢?本文將圍繞這個問題詳細介紹。

軟件測試和開發(fā)過程相對應, 軟件測試一般分為4個階段:單元測試、集成測試、系統(tǒng)測試、驗收測試。

一、單元測試

單元測試:單元測試是針對軟件設(shè)計的最小單位–程序模塊甚至代碼段進行正確性檢驗的測試工作,通常由開發(fā)人員進行。

對于單元測試中單元的含義,一般來說,要根據(jù)實際情況去判定其具體含義,如C語言中單元指一個函數(shù),Java里單元指一個類,圖形化的軟件中可以指一個窗口或一個菜單等。

總的來說,單元測試是對軟件中的最小可驗證單元進行檢查和驗證。

測試原則:

1、盡可能保證測試用例相互獨立(測試用例中不能直接調(diào)用其他類的方法,而應在測試用例中重寫模擬方法);

2、此階段一般由軟件的開發(fā)人員來實施,用以檢驗所開發(fā)的代碼功能符合自己的設(shè)計要求。

單元測試的好處:

1、盡早的發(fā)現(xiàn)缺陷;

2、利于重構(gòu);

3、簡化集成;

4、文檔;

5、用于設(shè)計。

單元測試的不足:

1、不可能覆蓋所有的執(zhí)行路徑,所以不可能保證捕捉到所有路徑的錯誤;

2、每行代碼需要3~5行代碼進行單元測試,存在投入與產(chǎn)出的平衡。

二、集成測試

集成測試是在單元測試的基礎(chǔ)上,把軟件單元按照軟件概要設(shè)計規(guī)格說明的規(guī)格要求,組裝成模塊、子系統(tǒng)或系統(tǒng)的過程中各部分工作是否達到或?qū)崿F(xiàn)相應技術(shù)指標及要求。

集成測試包括BigBang、自頂向下、自底向上、核心系統(tǒng)集成、高頻集成。

三、系統(tǒng)測試

系統(tǒng)測試:系統(tǒng)測試是在集成測試通過后進行的,目的是充分運行系統(tǒng),驗證各子系統(tǒng)是否都能正常工作并完成設(shè)計的要求。它主要由測試部門進行,是測試部門最大最重要的一個測試,對產(chǎn)品的質(zhì)量有重大的影響。

集成測試和系統(tǒng)測試之間的比較:

1、測試內(nèi)容:集成測試是測試各個單元模塊之間的接口,系統(tǒng)測試是測試整個系統(tǒng)的功能和性能;

2、測試角度:集成測試偏重于技術(shù)的角度進行測試,系統(tǒng)測試是偏重于業(yè)務的角度進行測試。

四、驗收測試

驗收測試也稱交付測試,以需求階段的《需求規(guī)格說明書》為驗收標準,測試時要求模擬實際用戶的運行環(huán)境。是針對用戶需求、業(yè)務流程進行的正式的測試,以確定系統(tǒng)是否滿足驗收標準,由用戶、客戶或其他授權(quán)機構(gòu)決定是否接受系統(tǒng)。

驗收測試包括alpha測試和beta測試,alpha測試是由開發(fā)者進行的軟件測試,beta測試是由用戶在脫離開發(fā)環(huán)境下進行的軟件測試。

2.談談你之前測試的項目流程,在每個階段的輸出有哪些?

比如說敏捷開發(fā)每周他有新的需求來了,新功能推出來之后,是不是第一個項目流程需求分析會。

需求分析:(開發(fā)、產(chǎn)品、測試)探討需求功能點,數(shù)據(jù)庫表的設(shè)計,接口設(shè)計?,F(xiàn)在大都是前后端分離的這樣一個項目對吧,你要從這些面去回復,比較全面。

然后輸出的一個需求文檔,包括已接口的、功能的。你不要只答到一個需求分析。

開完這個會之后,我們就按照這個需求分析去編寫測試用例。在編寫測試用例之前,你的主管會去編寫測試計劃(如果你是主管你就說我編寫測試計劃)然后任務分配。

用例的設(shè)計,整理測試要點,用例評審。

比如開發(fā)人員說他要開發(fā)幾個接口,那么你的用例里面,測試要點都要給開發(fā)人員進行評審。

用例評審完之后,就要整理形成最終的一個用例版本。

然后開發(fā)人員去開發(fā)代碼,進行一個預測,開發(fā)進行一個自測,對主要一個功能進行冒煙測試,然后給我們提測。

測試過程中,Bug的提交,比如我們用的Jira,用什么管理系統(tǒng)去提交的bug。

Bug的生命周期,怎么去重新提交。這就是一個測試缺陷報告。

然后在什么時候進行上線,產(chǎn)品發(fā)布后再會有一個線上維護性的回歸測試等等。

像這些內(nèi)容,你按照這個思路去和面試官交流。那么你這個流程也是非常規(guī)范的!

所以大家在面試時候不要簡單的說,需求分析、編寫用例。這樣規(guī)范起來,就體現(xiàn)了你在互聯(lián)網(wǎng)公司對自己角色的定位很清晰,對工作內(nèi)容也很明確。

不要小看這個問題。

3.談談敏捷模式的認識?

參考閱讀——敏捷軟件測試常見的七個誤區(qū)

4.linux常見查看日志命令有哪些?

全文查看

分頁查看

部分查看

文件查看命令–cat

1.查看文件所有內(nèi)容cat

cat是cancatenate的簡寫,用于將一個文件的內(nèi)容連續(xù)輸出到屏幕上。

語法: cat[-選項][目標文件] 查看文件內(nèi)容

參數(shù): -n為文件內(nèi)容添加上行號

命令: cat -n /etc/passwd 查看passwd時,給文檔添加上行號

參數(shù): -b為文件內(nèi)容添加上行號,但空行不算

命令: cat -b/etc/inittab 查看inittab時,給文檔添加上行號,空行不會添加行號

文件查看命令–more

2.分頁查看文件內(nèi)容more

語法: more[目標文件] 分頁查看,按空格鍵往下翻

文件查看命令–less

3.分頁查看文件內(nèi)容less

語法: less[文件名] 分頁查看,按b往上翻,按空格往下翻,按q退出

總結(jié):

全文查看:cat

分頁查看:more less

部分查看: head tail

文件查看命令–head

4.查看部分文件內(nèi)容 head

語法: head[-選項][文件名]

命令: head /etc/passwd 默認查看文件開頭的前10行

文件查看命令–tail

5.查看部分文件內(nèi)容tail

語法: tail[-選項][文件名]

命令: tail /etc/passwd默認查看文件末尾的10行

……

5.線上質(zhì)量BUG頻頻爆發(fā)怎么辦?

真的勇士, 敢于直面慘淡的 warning 、 敢于正視淋漓的 error !

有人喜歡創(chuàng)造世界,他們做了開發(fā)者;有的人喜歡開發(fā)者,他們做了測試員。

什么是軟件測試?軟件測試就是一場本該在用戶面前發(fā)生的災難提前在自己面前發(fā)生了,這會讓他們生出一種救世主的感覺,拯救了用戶,也就拯救者這個軟件,避免了他們被卸載的命運。

愿你我相遇皆有所獲!

如果你覺得此文對你有幫助,如果你對軟件測試、接口測試、自動化測試、面試經(jīng)驗交流感興趣歡迎加入:

軟件測試技術(shù)群:1079636098,

群里發(fā)放的免費資料都是筆者十多年測試生涯的精華,還有同行大神一起交流技術(shù)。

作者:來自公眾號:程序員一凡

原創(chuàng)不易,歡迎轉(zhuǎn)載,但未經(jīng)作者同意請保留此段聲明,并在文章頁面明顯位置給出原文鏈接。

6.如何分析一個bug是前端還是后端的問題?

像這個問題,這是一個軟件測試工程師初、中級會問你的面試題。

像最前面圖上的問題,你一定要能夠全面的詮釋。大家一般能答出多少個?歡迎在評論區(qū)留言探討。

在回答這一類問題的時候,我們要根據(jù)自己的工作經(jīng)驗,去總結(jié)。

回答的時候不能簡單的說“是否對錯”,我們要根據(jù)面試官問的問題去擴展,我們就拿第6個問題來說吧!

然后你如何分析一個Bug是前端還是后端的問題?

這個就看大家做軟件測試的心得了,像這類問題,你去百度去網(wǎng)上也不好找。歡迎在評論區(qū)談一下大家自己的經(jīng)驗。(抓包?看接口返回?)

通過一些接口請求信息,抓接口請求信息。(通過瀏覽器的一些開發(fā)者工具)

就是說檢查接口,檢查接口首先你得了解BUG它用到了哪些接口,然后檢查請求的數(shù)據(jù),發(fā)送的數(shù)據(jù)是否正確,后臺反饋的數(shù)據(jù)是什么?

如果前端沒有請求接口,或者請求的時候參數(shù)與需求不符,那么肯定就是前端的問題。

劃重點:請求參數(shù),返回的響應值

那么我們可以來看一個簡單的案例。

我這里有一個平臺,是前后端分離的,只有前后端分離的系統(tǒng)才會出現(xiàn)這個問題。

假設(shè)這個是我們被測的系統(tǒng),我們在系統(tǒng)管理-用戶管理這里是不是有很多用戶,這個是最簡單的用戶管理系統(tǒng)了。就是有哪些人,有admin有知一,有木子,有當當?shù)鹊群芏唷?/p>

我們先來刪除其中任意一個,頁面沒有任何的反應。

我第二次再去刪除同一個,它就報Userld不存在了對吧?

那么如果是這種情況,是前端的問題還是后端的問題?一看就是前端的問題對吧。

判斷這個問題,是不是前端的問題,我們就打開netkwork

我們來新增一個用戶,它就會調(diào)用一個add接口,顯示用戶新增成功。

當我新增一個用戶的時候,bug可能會偶爾重現(xiàn)。所以大家在看接口請求的時候,你要看它本來你去刪除的時候它只調(diào)用了一個接口,那么它不僅要刪除這個人,它其實還要去刷新這個頁面,它需要重新去調(diào)用這個用戶界面的接口。這個時候你就需要知道當它做這個刪除功能的時候需要調(diào)用幾個接口。

可能有些接口,開發(fā)人員沒有去調(diào)用,那么就是前端的問題,這個時候需要我們主動刷新一下,主動刷新的時候,整個頁面它會重新整個去獲取一遍。這個時候刪除在頁面上才會生效。所以說這是前端少調(diào)用了一個接口。

這就是前端的一個問題。

用了一個接口。

以后去回答這個面試題,你就可以完美的去回答了,如果還是沒有完全理解可以公眾號程序員一凡獲取視頻精講教程。

## 相信夢想會如期而至。

1

迷失的時候,選擇更艱辛的那條路。

當你內(nèi)心有目標和夢想的時候,別害怕,勇敢的嘗試一次吧,放棄很輕松,要磨滅內(nèi)心的熱情也很容易,但是堅持下,也許就能看到不一樣的自己,人生是一次不會返程的路途,給自己一次機會有何不可。

每一個成功的人,在前進的路上都會收到很多的鼓勵,也會愿意鼓勵他人,我深深感受到鼓勵帶給我的幫助,你們的每一次點贊,就是對我最大的支持,讓我一直堅持的做出更好的內(nèi)容。

愿你我相遇,皆有所獲! 歡迎關(guān)注?微信公眾號:程序員一凡

1.免費領(lǐng)取一份216頁軟件測試工程師面試寶典文檔資料。

2.軟件測試學習路線以及相對應的視頻學習教程免費分享!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容