软件测试面试总结
最近換工作,考慮將每個公司的面試一并總結(jié)到這篇隨筆里面,定期更新,直到我拿到合適的offer為止,祝福我吧!
--2016.7.23
今天去參加金山的軟件測試面試,項目組做增值服務(wù)功能測試,現(xiàn)將面試過程總結(jié)如下:
1、第三方支付測試:這方面問的最多,基本上前20分鐘都在糾結(jié)這個問題,先附上第三方支付的原理:http://www.51testing.com/html/61/n-866261.html
組圖為第三方支付一般模式流程和支付寶模式流程
對于支付這一塊,主要追問如何模擬支付失敗的場景,如何判斷是否支付成功(以支付寶為例);
我:通過支付流水來判斷,支付成功之后支付寶會生成一條流水帳號,表示付款成功,這時對應(yīng)的訂單狀態(tài)也應(yīng)該由“待支付”狀態(tài)更新為“待發(fā)貨”狀態(tài),如果訂單狀態(tài)沒有改變過來,說明支付有問題(注:這個答案沒有說服力,生成流水后訂單狀態(tài)沒變化只能說明是訂單處理有問題,無法說明是支付出了問題,相反,因為已經(jīng)生了支付流水,說明支付是正常的。要想說明支付失敗,應(yīng)該是支付之后錢被扣了但是沒有生成相應(yīng)的支付流水)
? ?面試官提示:支付失敗時支付寶應(yīng)該會返回一些錯誤信息,你的平臺是怎么處理這些信息的,是怎么展現(xiàn)這些處理結(jié)果給客戶的
? ?我:支付的結(jié)果有兩種情況,一種是支付成功,一種是支付失敗,都會有對應(yīng)的頁面,返回支付失敗的信息我們app這邊會有一個對應(yīng)的支付失敗的頁面,還會有相關(guān)的“重新支付”的按鈕提示用戶再次支付
? ?題目總結(jié):面試官想問的應(yīng)該是想讓我列出支付失敗的各種情況,app這邊如何去處理支付寶返回的支付結(jié)果,所以我回答的內(nèi)容應(yīng)該不是她們想要的,附上我能想到的支付失敗的場景:
1)跳轉(zhuǎn)到支付寶頁面時斷網(wǎng);2)支付寶余額不足;3)跳轉(zhuǎn)到支付寶頁面后不支付直接返回;4)支付時斷網(wǎng);5)如果是直接跳轉(zhuǎn)打開支付寶app,授權(quán)時選擇拒絕
2、問到數(shù)據(jù)埋點,對用戶的操作會生成一個log文件上傳到一個平臺,從log文件中可以查看到用戶的操作流程,如何對數(shù)據(jù)埋點進(jìn)行分析。
? ? ?先附上數(shù)據(jù)埋點的概念鏈接:http://www.zhihu.com/question/36411025 ? ??https://ask.hellobi.com/question/14191
總結(jié):數(shù)據(jù)埋點沒接觸過,用戶的數(shù)據(jù)分析應(yīng)該是數(shù)據(jù)部門和產(chǎn)品的活了吧,目前大部分公司用友盟來跟蹤用戶數(shù)據(jù)(活躍用戶之類的統(tǒng)計),線上的報錯率也可以用友盟來抓取,具體的操作不了解,平常測試過程中也沒有對這一塊進(jìn)行專門的測試,所以我只說了我知道的東西。
3、最后面試官開始放大招,問了兩個功能的用例設(shè)計
1)天氣預(yù)報軟件,用的是第三方提供的sdk,作為展示在手機(jī)屏幕的一個banner,如何測試這個軟件的城市,時間和溫度
我:(1)先從UI頁面入手,查看展示的banner是否符合UI稿并對用不同尺寸和版本的手機(jī)對其進(jìn)行兼容性測試;
(2)溫度的變化可以通過城市+時間這兩個字段來確認(rèn),所以我們在測試溫度變化的時候,可以通過修改數(shù)據(jù)庫(默認(rèn)會有一個新的數(shù)據(jù)表來存儲這些數(shù)據(jù))表里的城市和時間就可以查看溫度相應(yīng)的變化;對于城市:
*城市名的長度,是否有一個長度的限制,最長展示多少,超過這個長度應(yīng)該怎么處理,會不會造成頁面錯位;
*對于各國的城市是否兼容各國語言的展示,會不會亂碼;
對于時間:
*考慮邊界值時間,00:00和23:59時對應(yīng)城市的溫度展示是否正常;
*等價類考慮時間,6:00,12:00時對應(yīng)城市的溫度展示是否正常;
*考慮時間的展示方式,是以“今天”“昨天”“明天”的形式展示,還是以“YY-MM-DD”的形式展示;
*考慮能查看到的記錄時長是多少,是一周的時間記錄還是一個月還半年;
*查看時間是否是即時顯示;
對于溫度:
*溫度的展示單位是什么,華氏還是攝氏度;
*溫度的最大值是多少,最小值是多少,超過了會怎么顯示
*確認(rèn)溫度是否顯示精準(zhǔn),最簡單的方法是百度其他的網(wǎng)站來查看即時的溫度顯示進(jìn)行對比(也是等價類)
面試官提示:對于地址的定位,應(yīng)該是要開啟本地的GPS,那么這里有一個授權(quán)的機(jī)制,而且會有一個聯(lián)網(wǎng)的問題,你這些數(shù)據(jù)應(yīng)該是要聯(lián)網(wǎng)才能讀取得到
我:(補(bǔ)充)*授權(quán)問題--允許--可以定位到位置;
*授權(quán)問題--拒絕--無法定位到位置;
*網(wǎng)絡(luò)問題--移動互聯(lián)網(wǎng)下的數(shù)據(jù)展示,wifi下的數(shù)據(jù)展示,無網(wǎng)絡(luò)下的數(shù)據(jù)展示,網(wǎng)絡(luò)不好情況的數(shù)據(jù)展示;
?2)現(xiàn)在的app引導(dǎo)頁都會有很多條件篩選然后再跳轉(zhuǎn)到首頁,如何設(shè)計測試用例
?我:*對每個條件進(jìn)行單一的篩選,然后查看跳轉(zhuǎn),是否數(shù)據(jù)是對應(yīng)的;
*對條件進(jìn)行組合篩選,查看跳轉(zhuǎn),是否數(shù)據(jù)是對應(yīng)的;
*對跳轉(zhuǎn)時的網(wǎng)絡(luò)環(huán)境進(jìn)行測試,跳轉(zhuǎn)時斷網(wǎng)后應(yīng)該怎么展示,網(wǎng)絡(luò)不好時應(yīng)該怎么展示;
面試官提示:對引導(dǎo)頁的文案,觸摸點也要進(jìn)行測試
我:(補(bǔ)充)*查看文案的展示--是否正確;
*文案是否可以后臺更改,如果可以更改,字?jǐn)?shù)限制是怎樣,超出長度應(yīng)該怎么顯示,對特殊字符,數(shù)據(jù)和表情是否有限制;
*圖標(biāo)是否可以后臺更改,如果可以更改,查看后臺更改后是否有更新到引導(dǎo)頁,是否有緩存,緩存時間是多久;
*兼容性測試
總結(jié):面試官給出的這兩道題都是日常測試中常見的模型,用例設(shè)計也比較常態(tài)化,對于天氣預(yù)報軟件,面試官還提示安裝之后要查看以下外置的sdk文件的位置,我在平時測試中沒有進(jìn)行這種操作,也不理解為何要去查看它外置sdk存放的位置,查看了又能怎樣?后續(xù)再了解。
總的來講,金山的面試問的問題都是日常測試中常見的普通問題,問的測試方法和操作也是日常工作常見的基本操作,沒有問很深的技術(shù)問題(可能主要是招功能測試吧),也不會問太偏的問題,至于后面的用例設(shè)計,現(xiàn)場回答,感覺自己的條理不算清晰,授權(quán)和網(wǎng)絡(luò)環(huán)境真是個梗啊,日常經(jīng)常遇到過卻總被我忽略。
?
--2016.7.25
上午是“耶薩”公司的面試,據(jù)測試經(jīng)理跟我說的招的是中級,到公司之后先是填寫個人的資料,后面有一份筆試題(不好意思,題目基本上都忘光了),沒什么難度,都是以簡答題的形式問你之前的項目流程,測試經(jīng)驗等。最后一道題是測試用例設(shè)計,給的模版是多條件篩選,這道題在后面的交談中也有繼續(xù)追問。我現(xiàn)在以京東搜索頁為模版,說一下對這道題的理解。
這個篩選頁,光從頁面大類上看,有8個選項,每個選項下來還有自己各自的小類,點擊“篩選”按鈕后還會彈出更多的選項出來,讓你來設(shè)計測試用例。
分析:首頁類目繁多,各種類目之間的組合也很多,所以基本上可以排除逐個組合去測試的方法。我給出的測試方法是:把所有的篩選條件都隨機(jī)挑一個,保證每個篩選條件都有被選中,篩選出商品,然后隨機(jī)挑選2~3件符合條件的商品,查看商品屬性,看看是否所有條件都一一滿足。同時,也可以通過抓包,每個條件都會有對應(yīng)的返回字段,一一對比每一個字段看有沒有返回錯誤或是遺漏的。
上面就是我給出的測試方法,不過貌似面試官不是很滿意啊。
這家公司比較注傾向于招有電商經(jīng)驗的測試人員,主要問的問題有:
1)整個下單流程的測試過程。
2)web自動化:有沒有封裝過一些方法,如何封裝,自動腳本現(xiàn)在有多少條測試用例,畫出一個自動化模塊的流程出來。
3)項目流程,bug管理流程,測試用例如何去維護(hù)和更新,用什么工具來維護(hù)測試用例。
4)熟悉Linux么--這一點,Linux我還真不熟悉。
面試總結(jié):該公司主要是招功能測試,所以沒有問很深的技術(shù)性問題,主要還是詢問你之前的項目經(jīng)驗和測試流程,偏重詢問你的測試方法和測試思想,比較注重面試人員的邏輯思維和測試用例設(shè)計。這類公司就見仁見智了,雖然業(yè)務(wù)不是我喜歡的,但是如果你是善于思考的人,這家公司或許對你的邏輯嚴(yán)謹(jǐn)性的鍛煉幫助還是蠻大的。
?
--2016.7.25
下午面試“恒大微商城”,不要問我跟恒大有什么關(guān)系,貌似真沒什么關(guān)系,據(jù)說是“戰(zhàn)略合作”。
這家公司的測試團(tuán)隊才剛起步,聽說目前只有一個測試人員,面試的內(nèi)容也很簡單,一個技術(shù)人員+HR面,技術(shù)人員貌似對測試相關(guān)工作也不是很了解(估計是開發(fā)),大致問了一下你以前的工作內(nèi)容及離職原因等。面試內(nèi)容沒什么好說的,倒是筆試題我我記下了,分享一下,筆試題目都是一些基本的理論題,百度一下就可以知道答案。
1)測試的策略有哪些;2)Beta測試與Alpha測試有什么區(qū)別;3)測試過程中如果發(fā)現(xiàn)需求文檔不完善或者不準(zhǔn)確應(yīng)該怎么處理;
4)你認(rèn)為做好測試計劃工作的關(guān)鍵是什么;5)簡述以下缺陷的生命周期;6)軟件的安全性應(yīng)從那幾個方面去測試;
7)一套完整的測試應(yīng)該由哪些階段組成;8)軟件系統(tǒng)中除了用戶文檔之外,文檔測試還應(yīng)該關(guān)注哪些文檔;9)如何理解壓力、負(fù)載、性能測試;
10)沒有產(chǎn)品說明書和需求文檔的情況下能夠進(jìn)行黑盒測試么;11)測試中的“殺蟲劑怪事”是指什么;12)寫出bug報告當(dāng)中一些具備的內(nèi)容;
13)畫出軟件測試的V型圖;14)請比較一下各種軟件測試的區(qū)別和聯(lián)系;15)要對電子商務(wù)網(wǎng)站做冒煙測試,你會做哪些類型的測試(注:對這個問題很無語啊,你是說哪些業(yè)務(wù)啊);
?--2016.7.26
這次面試的公司是”廣東錢端“,上來先是一份筆試題,我咋感覺這份題那么眼熟呢,原來是全在網(wǎng)上抄的,一字不漏啊有木有!線上試題鏈接:http://wenku.baidu.com/link?url=YsK23kA5ot0HbBkE85DrqyLACgjvEwYYUYN8jBZwOcWohE0vHuGb79Wo3ptFVL9l0_JGQoWymalMVng5ls7VX5D7QNOr-0tLkgXvIPb1qqC
這家公司主要是招中級功能測試,印象最深的就是問我下單流程(這是重點,已經(jīng)有兩家公司問了下單流程了),如何測試訂單流程,還在跟我糾結(jié)退貨退款流程,買家退款之后訂單的狀態(tài)是怎樣的,賣家那邊的訂單應(yīng)該如何顯示,差點被他繞進(jìn)去了。其他的問題有:
1.用什么測試方法來測試一個模塊,舉例說明一下;
邊界值:測試app首頁的上新時間,用邊界值方法來測試,考慮到59秒,1分59秒,59分59秒,24小時59分59秒時上新時間的顯示,剛好過了59秒后顯示是否正常;
等價類:測試手機(jī)號注冊,電信的手機(jī)號碼為一類,移動的手機(jī)號碼為一類,聯(lián)通的手機(jī)號碼為一類;
正交實驗法:訂單流程(好吧我自己的坑我自己跳),訂單取消的幾種操作,退貨退款的幾種操作,評價成功的幾種操作;
2.如何安排測試計劃,是按照完成一個模塊測試一個模塊還是全部模塊完成后才進(jìn)行測試(其實就是敏捷開發(fā)和常規(guī)開發(fā)的區(qū)別);
整個過程持續(xù)了2個多小時,筆試+兩輪技術(shù)面+HR,回來累成狗,沒來得及整理,現(xiàn)在只列出我印象比較深刻的幾個點出來,這家公司加班比較多,HR和測試經(jīng)理都跟你強(qiáng)調(diào)這一點,所以有意愿的小伙伴自己也要有心理準(zhǔn)備。
--2016.7.27
今天面試的公司叫”彩訊科技“,總部在深圳,廣州是分部,據(jù)說在沖擊上市(不過貌似和我沒啥關(guān)系),一上來就是一份4頁的筆試題(心好累)。這次依舊是2輪技術(shù)面+HR面,技術(shù)總監(jiān)的面試給我的印象比較深,有兩個問題把我問住了,現(xiàn)整理如下(問題部分先后,記多少寫多少):
1)說說app測試和PC端測試有什么不同(這個問題居然把我問住了,感覺有很多不一樣的地方,但又說不上來,當(dāng)場蒙逼了有木有),今天回過頭來想想,列舉幾點:
(1)兼容性:像安卓手機(jī),市面上機(jī)型比較雜,各種系統(tǒng)版本比較多,尺寸也不一樣,當(dāng)然PC兼容性也受系統(tǒng)版本/瀏覽器和電腦尺寸影響,但相對安卓來說,已經(jīng)簡單很多了(這一點說的比較牽強(qiáng))
(2)測試環(huán)境的配置:app測試需要配置wifi環(huán)境,pc端測試需要配置host文件;
(3)網(wǎng)絡(luò)問題:app測試受網(wǎng)絡(luò)影響比較大,需要考慮網(wǎng)絡(luò)流暢的情況下,弱網(wǎng)絡(luò)的情況下,無網(wǎng)絡(luò)的情況下app的頁面顯示和運(yùn)行情況;
(4)版本上線:app是服務(wù)端先上線,上線前還要對上一個版本做服務(wù)器的兼容測試,運(yùn)行平穩(wěn)后再發(fā)包;pc端是前端和后臺一起上線;
(5)app端需要關(guān)注占用的手機(jī)CPU和內(nèi)存;需要關(guān)注app耗流量的情況,需要關(guān)注運(yùn)行app手機(jī)的耗電和發(fā)熱的情況;
(6)頁面交互,app比較注重頁面交互,頁面的交互也往往比pc端復(fù)雜,并且一個原生的app還會有很多內(nèi)嵌的wap頁或sdk;
2)舉例說明一下你在平常的測試過程中是怎么運(yùn)用那些測試方法來測試的(尼瑪又是這個問題);
3)你覺得寫測試用例的時候更應(yīng)該注意一些什么內(nèi)容,你有什么需要改進(jìn)的地方
這個問題問的比較深,寫測試用例其實很考驗一個人的邏輯思維,面對一份需求文檔,你能否考慮到文檔描述的內(nèi)容之外的情況,這就需要你對業(yè)務(wù)的熟悉度和思維擴(kuò)散都要有很好的把握。而我回答需要繼續(xù)改進(jìn)的也正是這兩個點,舉例說明剛好用到前不久我們的”云店“業(yè)務(wù)免費開放,當(dāng)從需求文檔上,就一句話:免費開放一年。但如果要測試的話,你需要考慮到的測試點有:
(1)時間限制是怎樣的,這個一年時間是按用戶創(chuàng)建時間來倒推一年還是取整點;
(2)已購買”云店“用戶的老客戶應(yīng)該怎么沒處理,合同到期后會自動續(xù)一年么,這個時間點又是怎么算的;
(3)對于合同到期的老用戶,是否也可以免費開啟云店,如果可以的話,這個時間點又是怎么算的;
(4)對于合同剛好到期但免費續(xù)用了云店的用戶,合同到期后會不會對店鋪有影響,店鋪會不會自動被關(guān)閉,免費續(xù)用是否會更新其合同信息,更新合同信息對店鋪有什么樣的影響;
(5)免費續(xù)費之后對云店的原有功能有沒有影響;
4)平時工作中是否有進(jìn)行安全測試
這個還真沒有,好吧,我承認(rèn)這是我們之前的短板,沒有進(jìn)行過專門的測試,而他問的內(nèi)容也比較常規(guī),就是sql注入,剛好前幾天我上一家公司被黑客攻擊,用的就是sql注入,所以我只能描述一下這其中的原理和如何去模擬,但因為沒有實戰(zhàn)經(jīng)驗,所以我也只能講個大概。
5)性能測試和linux---一句話,沒怎么接觸過(我承認(rèn),這是我的知識短板,自動化都夠我搞很久了,這些知識點只能以后一點一點去積累了)
總的來說,這家公司給人的感覺還是蠻有誠意的,筆試題是這幾家公司中最難的,內(nèi)容覆蓋很廣,從功能,性能,自動化,單元測試到網(wǎng)絡(luò)協(xié)議和linux知識,涵蓋了所有測試應(yīng)該具備的知識點,當(dāng)然,如果我全都會的話那我直接面試高級開他個十幾K了,哈哈!筆試題后面再整理,稍作休息
轉(zhuǎn)載于:https://www.cnblogs.com/chenshaoping/p/5699407.html
總結(jié)
- 上一篇: c2371 重定义
- 下一篇: perf之sched