前幾天面試了5家公司,因為這次面試的目的不是要真正的找工作,而是想通過面試發現自己存在的問題,然後花點時間彌補自己的不足,準備好之後再去投簡歷到想進入的公司。
1、本來以為自動化、效能、介面、安全(這個要求的不多)有一樣比較熟悉就可以出去找個不錯的工作了。但是面試的結果看來,只會一樣,是達不到高階崗位的要求的。
2、高階崗位對應聘人員的要求也比較高,用人單位面試的時候會比較謹慎,如果面試過程有任何乙個小問題回答不好,都可能被pass掉。
3、面試的幾家公司,基本都對用例的設計能力有考察,這也是測試人員的基本功。用例的設計能力,主要是考察對正常場景用例的設計,一定要發散思維,考慮盡量多的情況,即便有些場景極少見,考慮的情況越多,說明思維越縝密。
各個公司面試問題總結:
1、有三個輸入框,規定只能輸入整數,功能是生成乙個三角形。對這個功能設計用例。
一般對輸入的長度有限制,比如為10位。
正常場景(所列場景還不夠詳細,應該用決策表法):
(1)三邊長度都為一位正整數
(2)三邊長度都為10位正整數
(3)一邊為一位正整數,兩邊為10位正整數
(4)等邊三角形
(5)等腰三角形
異常場景:
(1)有一邊為0
(2)三邊都為0
(3)兩邊之和小於第三邊
(4)三邊都是超過10位的正整數
(5)三邊都是負整數
(6)小數
(7)分數
(8)特殊字元,如漢字、字母、標點符號、特殊字元
(9)網路異常
安全:(1)url越權
(2)前後臺校驗
(3)跨站偽造請求
(4)儲存型xss
(5)反射型xss
(6)sql注入
相容性:
(1)不同版本瀏覽器
(2)不同的作業系統
效能:(1)單使用者使用時,響應時間
(2)大量戶使用時響應時間
(3)資料較大時響應時間
2、測試分為哪幾個階段?
單元測試、整合測試、系統測試、α測試、β測試
1、有乙個二維陣列,請用任何一種你熟悉的語言遍歷其中的元素。
for i in len(a):
for j in .len(a[1]):
print(a[i][j])
2、有乙個log檔案,想找到含有「
test
」的一行,並輸出它的前
5行和後
5行(用
shell
命令或指令碼)
先用grep命令找到
test
所在的行,將行號列印出來,再用
awk命令取行號,賦給變數
a,最後用
sed命令輸出
a+5和
a-5,即得到日誌檔案指定文字所在區域的前後五行。
3、你們測試的流程是什麼樣的?
(1)首先由se規劃處版本的需求,輸出需求描述文件;
(2)se對需求進行講解,與會人員包括測試、開發、產品;
(3)開發人員對各自的需求進行詳細設計;
(4)開發人員對詳細設計進行講解,包括se、開發、測試;
(5)開發人員開始寫**,測試人員設計思維導圖和測試用例;
(6)測試人員對用例進行講解,與會人員包括測試、開發、se,講解過程也相當於評審;
(7)測試人員對評審後的用例進行修改、補充等,之後匯入用例庫;
(8)冒煙測試;
(9)單元測試,回歸測試
(10)整合測試、回歸測試
(11)系統測試、回歸測試
(12)發布產品
(13)測試總結
1、對登入功能做用例設計,介面上有使用者名稱輸入框、密碼輸入框和登入按鈕。
使用者註冊的時候,一般都會有字元型別及長度的限制。假如要求的是,只能是字母、數字和下劃線。長度都是5至
10位。
正常場景:
(1)使用者名稱和密碼全是5位數字
(2)使用者名稱和面全是10位數字
(3)使用者名稱和密碼全是5位下劃線
(4)使用者名稱和密碼全是10位下劃線
(5)使用者名稱和密碼全是5位字母
(6)使用者名稱和密碼全是10位字母
(7)使用者名稱和密碼是字母、數字、下劃線的組合5位
(8)使用者名稱和密碼是字母、數字、下劃線的組合10位
(9)使用者為普通使用者
(10)使用者為管理員賬戶
(11)使用者為其他角色使用者
(12)使用者為自定義角色的使用者
(13)使用者被鎖定又解鎖後,能正常登入
(14)選擇賬號中的歷史記錄,輸入密碼能登入成功
(15)網路異常時登入未成功,網路恢復後再次登入
異常場景:
(1)4
位數字(2)
11位數字
(3)4
位字母(4)
11位字母
(5)4
位下劃線
(6)11
位下劃線
(7)特殊字元:
<>」』\*?
(8)使用者名稱錯誤
(9)密碼錯誤
(10)使用者名為空
(11)密碼為空
(12)都為空
(13)網路異常
相容性:
(1)不同版本瀏覽器
(2)不同的作業系統
安全:(1)url越權
(2)前後臺校驗
(3)跨站偽造請求
(4)儲存型xss
(5)反射型xss
(6)sql注入
(7)密碼是否加密顯示
(8)密碼傳輸過程中是否加密
(9)多次輸入密碼錯誤是否會有控制措施,如鎖定ip、鎖定使用者賬號等
(10)如果沒有記住密碼的功能,點選歷史記錄中的賬號,不能自動填充密碼
效能:(1)單人登入時響應時間
(2)大量使用者登入時響應時間
(3)登入時,資源消耗情況(cpu、記憶體、
io、網路)
2、jmeter能不能做分布式部署?如果能,如何配置?
在bin目錄下的
jmeter.properties
檔案中的
remote_hosts
處填寫負載機的
ip和埠號(
1099
),如果有多個,則用逗號分開。然後啟動每個
jmeter
上的jmeter-server.bat
服務。在「執行—
>
遠端啟動」中選擇需要遠端啟動的執行機(每乙個執行機上面都要放同樣的指令碼)。
3、有乙個列表,列表中都是整數,請用一種你熟悉的語言設計乙個函式,要求統計這個列表中每乙個元素出現的次數,並按照出現次數的多少,由大到小輸出它的前n個數。
def printtopn(list1, num):
dict1 = {}
for i in list1:
if i not in dict1:
dict1[i] = list1.count(i)
list2 = sorted(dict1.items(), key=lambda x:x[1],reverse=true)
for j in range(num):
print(list2[j][0])
4、有沒有做過介面自動化測試?
用unittest框架做介面自動化測試。
5、jmeter做介面測試時,如果使用者名稱密碼要進行加密,要怎麼處理?
答:向開發人員要加密的類,class檔案或打包成
jar檔案都可以,然後匯入到
jmeter
中,在介面方法的預處理處,呼叫加密的方法,對使用者名稱和密碼進行加密。然後再執行介面方法的請求。
1、對excel單元格的合併功能設計用例。
2、對單元格的排序功能設計用例。
3、對協程編輯功能做用例設計。
4、在自動化測試過程中,如果資料庫是公用的,不能重灌,即資料庫中的資料不能初始化,你是怎麼做的?
5、你沒有做過介面自動化,如果讓你搭建好乙個介面自動化的框架,你覺得能完成嗎?
答:有做過。有兩種方式,一是用jmeter做介面測試;二是用
unittest
做介面自動化測試。介面自動化測試和
ui自動化測試整體的思想都是相似的,就是需要對用例做統一管理,要有日誌,測試報告等。只需要把介面除錯通,然後再放在框架裡面就可以了。無非是等用例越來越多之後,需要對框架不斷的調整和優化,以及功能模組的擴充套件。
6、你做過web端的測試,對
web端的測試有什麼看法或總結嗎?
答:我覺得web端的測試最難把握的是對瀏覽器相容性的測試。因為瀏覽的種類很多,不同瀏覽器的版本又有很多,但是測試的人力和時間都有限,要在有限的時間裡做好瀏覽器相容性的工作,就需要制定好相容性的測試策略。
比如,如果業務是toby的,就要調查好客戶使用的是什麼瀏覽器以及瀏覽器的版本,如果是
toc類的業務就需要根據使用者的群體使用瀏覽器的習慣和頻度,對要測瀏覽器的重要程度做乙個排名。在使用者使用最多的瀏覽器上執行全量的用例,而在其他瀏覽器及版本上執行
10%至
50%的用例。
當然還需要根據產品的情況不斷的總結經驗,在容易出現相容性的模組做重點測試。
測試工程師面試總結(一)
面試總結 某個核心模組具體怎麼測試?測試如何分工?專案業務。敏捷開發。迭代版本。迭代時間。專案週期中你扮演角色。角色重要性?1 2 3 迭代 一周或者是兩周迭代一次,版本更新,會增加新的需求,迭代一次不會進行用例的評審。乙個小的需求一般10條用例 4 測試流程?怎麼編寫測試用例?你平時是怎麼設計用例...
面試題 一期 中高階測試工程師
1 你的測試職業發展是什麼?測試經驗越多,測試能力越高。所以我的職業發展是需要時間積累的,一步步向著高階測試工程師奔去。而且我也有初步的職業規劃,前3年積累測試經驗,按如何做好測試工程師的要點去要求自己,不斷更新自己改正自己,做好測試任務。2 你認為測試人員需要具備哪些素質 做測試應該要有一定的協調...
軟體測試工程師面試雜談
發表於2011 年 8 月 31 日 由 sam最近一段時間以來由於專案組進度實在是緊張所以從5月初就開始招人計畫 到目前為止面試了20多位前來應聘軟體測試崗位的同行 當然到現在為止都還沒有招到合適的人選 見識過了形形色色的面試者 不吐不快 以至於有了這篇文章。我僅僅是乙個測試負責人而已不屬於管理層...