網(wǎng)站性能檢測評分
注:本網(wǎng)站頁面html檢測工具掃描網(wǎng)站中存在的基本問題,僅供參考。
好的互聯(lián)網(wǎng)公司
想成功進入互聯(lián)網(wǎng)公司,請收好這份干貨總結(jié) 互聯(lián)網(wǎng)視頻課程
寫在前面
今天算是在上海最安安穩(wěn)穩(wěn)的一個周末,從周五開始陸陸續(xù)續(xù)和不同的朋友吃了飯,想起來之前落下的文章還沒寫。等到項目忙起來的話,沒有時間來總結(jié),自然又要忘記,姑且先下筆亂謅個提綱出來。
這篇日志大概有以下內(nèi)容:
●總結(jié)互聯(lián)網(wǎng)測試/測試開發(fā)常見面試內(nèi)容
●對測試/測試開發(fā)的理解
●未來的學(xué)習(xí)規(guī)劃
●對有志于從事軟件測試行業(yè)的同學(xué)的指導(dǎo)
互聯(lián)網(wǎng)行業(yè)對測試崗位的需求
首先介紹下我之前任職的公司:某知名外企(貌似在國外知名度高一些),行業(yè)為傳統(tǒng)BI,客戶主要為美國大型銀行、投資機構(gòu)、大型制藥公司以及上市集團等,主要產(chǎn)品為BI報表,儀表盤等。
在某乎上關(guān)于互聯(lián)網(wǎng)行業(yè)與傳統(tǒng)軟件行業(yè)有什么不同?有這樣一條回答,“互聯(lián)網(wǎng)行業(yè)屬于【服務(wù)業(yè)】,而傳統(tǒng)的軟件開發(fā)行業(yè)屬于【制造業(yè)】”,雖然有點以偏概全的嫌疑,但是基本說出了互聯(lián)網(wǎng)行業(yè)與傳統(tǒng)行業(yè)的根本區(qū)別:服務(wù)的對象不同。互聯(lián)網(wǎng)行業(yè)服務(wù)的對象是普通的用戶,有著成千上萬不同特征的用戶畫像;傳統(tǒng)軟件行業(yè)的服務(wù)對象是特定行業(yè)的從業(yè)者,有著嚴(yán)格的約束,比如Product Manual(用戶手冊)。
在我看來,落地于軟件測試,互聯(lián)網(wǎng)與傳統(tǒng)軟件行業(yè)的區(qū)別主要如下:
●更加關(guān)注用戶體驗
●產(chǎn)品迭代快,需求變更快,測試周期短
●信息安全敏感度高,安全測試要求高
●用戶量級大,更產(chǎn)品的性能測試、并發(fā)測試等
●用戶場景更多,更復(fù)雜,對兼容性測試、適配測試要求更高
……(歡迎補充)
正因為這些需求,相比于傳統(tǒng)行業(yè),互聯(lián)網(wǎng)行業(yè)對軟件測試從業(yè)者的要求更高。特別是TDD(Test Drive Development測試驅(qū)動開發(fā))、BDD(Behavior Drive Development行為驅(qū)動開發(fā))、DDD(Domain Drive Design領(lǐng)域驅(qū)動開發(fā))以及敏捷的理念逐漸被提出來并在國內(nèi)深入實踐,測試的重要性逐漸提高。在這里特別更正一些同學(xué)對測試工程師的誤解:隨著技術(shù)的不斷更新,敏捷框架的流行,測試工程師逐漸被淘汰甚至消失。真的是這樣嗎?這種觀點當(dāng)然是錯誤的!而是恰恰相反,測試的地位在提升,對測試工程師,測試開發(fā)工程師的能力要求也更高了而已。新的時期的互聯(lián)網(wǎng)行業(yè)對測試的要求是:
●有一定的技術(shù)知識和能力,可以review產(chǎn)品代碼
●學(xué)習(xí)能力強,有掌握常用自動化測試框架和二次開發(fā)的能力
●深入了解操作系統(tǒng)、產(chǎn)品平臺(iOS或安卓等)的特性,能夠深入專項測試和性能測試
●可以幫助開發(fā)寫一些單元測試
●通過review代碼完善功能測試團隊(眾所周知現(xiàn)在很多大廠把功能測試外包)測試用例
●開發(fā)測試工具或平臺
……(歡迎補充)
軟件測試相關(guān)面試題目總結(jié)(干貨)
前面談了那么多,表面上看都是一些紙面上的東西,實際上是筆者在投遞130多份簡歷,20多家互聯(lián)網(wǎng)公司,涵蓋服務(wù)端、移動端專項、SDK測試、全棧測試開發(fā)不同領(lǐng)域的面試經(jīng)歷的深度總結(jié)。下面我就結(jié)合實際的面試題目去解讀互聯(lián)網(wǎng)行業(yè)對軟件測試工程師的要求。
一般面試是一個雙向的了解和選擇的過程,我常常把面試過程比作買菜的過程,雖然難免出現(xiàn)“討價還價”的環(huán)節(jié),總體還是面試者對考察人的全面考察以及應(yīng)聘者對所應(yīng)聘崗位以及應(yīng)聘公司的了解。所以窺一斑而知全豹,能了解到當(dāng)下對軟件測試工程師和測試開發(fā)工程師的要求。準(zhǔn)備好了嗎?干貨來了:
初級:功能測試
相比之前的傳統(tǒng)軟件工程思維,互聯(lián)網(wǎng)行業(yè)更需要的思維只有一點:關(guān)注用戶體驗:
●新浪微博聊天分組列表頁面
●滴滴打車叫單
至于一些基本的功能測試點,每一個面試者基本能回答上來。一般筆者會通過按需求、模塊、場景對測試用例劃分,再分析不同環(huán)境、設(shè)備的測試用例,最后加上性能、壓力、并發(fā)測試等。這樣的思考方式看似是完美無缺,但都不是面試官想要的完美答案。筆者當(dāng)時被批評最多的就是還是傳統(tǒng)軟件的思維,沒有考慮到互聯(lián)網(wǎng)關(guān)注的關(guān)鍵點。
這里對答案不再進行詳細(xì)探討,僅僅討論按照普通套路會遺漏的case:
以新浪微博的題目為例,除了要保證基本的功能正常之外,還要考慮用戶體驗。當(dāng)前很多互聯(lián)網(wǎng)產(chǎn)品不再僅僅是一個工具,更是內(nèi)容分發(fā)平臺。以微博聊天分組為例,分組的List排列順序并不是隨機的排列,也不是按照時間順序簡單的排列。而是根據(jù)用戶的興趣,關(guān)注度,親密度等有著清晰,有用戶導(dǎo)向的排列。那么測試除了要關(guān)注功能測試,也要關(guān)注產(chǎn)品本身的特性和用戶體驗。(不過這里筆者對這個題目設(shè)計的稍有微詞,一來是老哥我不怎么用微博,二來是像這種明顯帶有產(chǎn)品特征的case,在不同的version是肯定會有需求文檔的,如果需求里明確了聊天List排列會跟何種參數(shù)有關(guān),如果計算,我們作為測試工程師是肯定要cover的)
而滴滴打車叫單這個題目筆者就熟悉很多,當(dāng)時筆者也是按照一般的測試用例設(shè)計思路說了一遍。面試官表示基本認(rèn)可,但隨即提出了,這些東西一般人都會想到,但是我們作為服務(wù)者,肯定不能考慮用戶什么都正常的情況。比如用戶定位錯誤,網(wǎng)絡(luò)錯誤,沒有有效聯(lián)系方式,未安裝地圖等等,這些異常情況下的測試用例我們都要想到。因為既然是服務(wù)軟件,在異常場景下產(chǎn)品需要有:異常處理機制、對用戶友好的提醒和引導(dǎo)、糾錯功能等。
總的來說,互聯(lián)網(wǎng)產(chǎn)品作為服務(wù)大眾的多媒體工具,更關(guān)注的是用戶體驗。在設(shè)計測試用例的時候,除了功能測試相關(guān)的用例,更要關(guān)注異常情景以及用戶體驗相關(guān)的測試用例。
功能測試用例的題目除了這兩個題目之外,還有一些經(jīng)典的題目:
●水杯
●電梯
●窗戶
●自動售貨機
……
這樣的題目相對簡單,基本考察的都是測試用例設(shè)計能力?;景凑漳K、功能、需求、抗壓等思路去設(shè)計用例即可。詳細(xì)的答案大家直接求助網(wǎng)路就好了,這里就不復(fù)制粘貼了。
初級:計算機基本知識
這類的問題基本上考察的是應(yīng)聘者的計算機基礎(chǔ),總體感覺不難。主要要看應(yīng)聘的公司對該崗位的要求和對面試者的定位。我把我遇到的題目主要總結(jié)為這幾類:
●語言基礎(chǔ)知識:C++的多態(tài),Java虛擬機,Python的深拷貝與淺拷貝??偟膩碚f就是簡歷上寫的熟悉的語言的基礎(chǔ)題;
●計算機網(wǎng)絡(luò):這類問題在應(yīng)聘服務(wù)端測試的時候居多。例如TCP/HTTP原理,HTTPS與HTTP的區(qū)別,IP地址的分類,TCP與UDP的區(qū)別以及常見狀態(tài)碼等;
●數(shù)據(jù)庫:數(shù)據(jù)庫范式,簡單的命令,主鍵與外健,內(nèi)聯(lián)結(jié)等;
這些問題可以說是校招劃水水平,不過我好多都忘了還覺得社招這些東西不會被問到,這恰恰是我們準(zhǔn)備測試開發(fā)面試的盲區(qū),測試開發(fā)還是需要應(yīng)聘者有著扎實的計算機基礎(chǔ)。
中級:編程題以及情景設(shè)計題
編程題:
測試開發(fā)崗位要求從業(yè)者有著扎實的編碼能力,未來測試開發(fā)的主要工作將從功能測試轉(zhuǎn)移到專項和工具及平臺的研發(fā),編碼的工作是不可或缺的。我遇到的問題能回憶起來的有這么幾類:
●基礎(chǔ)類:
1.常見排序算法
2.算法復(fù)雜度
3.樹的遍歷,遞歸非遞歸,深度優(yōu)先和廣度優(yōu)先
4.鏈表題考到的最多:鏈表反轉(zhuǎn),環(huán)相關(guān)問題,刪除中間元素等
5.等;
●字符串處理:
1.字符串反轉(zhuǎn)
2.文本的規(guī)范化(首字母大寫,單詞規(guī)范化)
3.關(guān)鍵字查找及過濾
4.等;
●綜合編程題:
大都記不太清,會稍微有點難度,部分題目在LeetCode上也見到過,如經(jīng)典的Longest Substring Without Repeating Characters。說真的,如果想拿到大廠或者新生代互聯(lián)網(wǎng)公司的offer,題還是要刷的。這里分享我的個人經(jīng)驗,一般Python答起來會更輕松點,常見的面試題很多都是很有技巧性的,而Python在臨場發(fā)揮時應(yīng)對這些問題都比較簡單。但是有些問題用Python就不夠簡潔,比如說Python嚴(yán)格來說是沒有樹和棧這些結(jié)構(gòu)的。
總的來說編程題都不是太難,最好是Java/C++和Python都熟練,這樣應(yīng)對大多數(shù)的題目綽綽有余。
情景設(shè)計題
這類的題目會跟前面提到的很多問題相結(jié)合,考察知識的全面性,這里就直接列出來我遇到的問題吧,你們可以認(rèn)真感受下每個問題背后潛藏的考察點:
●代碼實現(xiàn),判斷IP的合法性
●輸入到瀏覽器一個地址,到觀察到頁面這個過程中都發(fā)生了什么
●這道題目很容易漏掉Cookie,也很容易漏掉該頁面需要權(quán)限或者登陸的情況
●如何測試一個IM系統(tǒng)
●如何測試一個多線程安全的日志類庫
●對一個SDK網(wǎng)絡(luò)協(xié)議接口進行升級,寫出所有的測試用例
……
由于時間太過久遠(yuǎn),很多題目都不太記得了??偟膩碚f,情景設(shè)計題目的特點是整個情景考察的知識點多而全面,并且相互之間聯(lián)系緊密,考察的是測試開發(fā)人員的知識全面性和考慮問題的全面性,所以歸到了高級題目。
高級:測試專項,術(shù)業(yè)有專攻
高級的題目主要集中在某個測試的專項上。正如前文所說的那樣,未來的很大一部分測試工作,將會由開發(fā)人員承擔(dān),而測試開發(fā)工程師主要集中在平臺開發(fā)和測試專項,所以面試最難的地方就是測試專項。不是說題目更難,而是考察的更深。因為我的經(jīng)驗主要集中在iOS和Web自動化,所以這塊兒被問到的最多。
●iOS
1.View和Viewcontroller的生命周期
2.ARC和RC的區(qū)別
3.Instruments測試內(nèi)存泄漏
4.EXC_BAD_ACCESS
5.Xcode調(diào)試
6.iOS證書
7.APNs各個版本的區(qū)別
……
●Web
說出幾個Web自動化測試工具以及區(qū)別
……
●自動化測試
1.講下做過的自動化測試的項目以及自己在框架中做的工作(甚至有公司還問了我某個函數(shù)怎么調(diào)用…)
2.列出幾個移動端自動化測試框架,給一個項目,結(jié)合項目內(nèi)容以及團隊組成對框架進行選型
……
基本上到這里算是把兩個月以來的面試總結(jié)了一波,希望能夠讓更多的人了解到測試開發(fā)的新要求和未來發(fā)展,希望大家可以多多交流。加QQ2201716409可進入測試技術(shù)交流群:313782132?;貜?fù)測試資料獲取網(wǎng)盤資料如果覺得還不發(fā)可以點贊轉(zhuǎn)發(fā)謝謝大家!
互聯(lián)網(wǎng)企業(yè)三大崗位,哪一個才是最好的? 企業(yè)視頻課程
說起互聯(lián)網(wǎng)行業(yè),那就不得不說該行業(yè)中的三大崗位。在這些年的迅猛發(fā)展中,越來越多的年輕人投入到了互聯(lián)網(wǎng)行業(yè)當(dāng)中,而互聯(lián)網(wǎng)行業(yè)的這三大崗位人才更是無比搶手。那么,到底是哪三大崗位呢?哪個崗位才是最好的呢?今天小職就陪大家好好聊聊!
產(chǎn)品經(jīng)理
小職先和大家聊聊產(chǎn)品經(jīng)理,相信大家應(yīng)該都知道,產(chǎn)品經(jīng)理就是負(fù)責(zé)并保證高質(zhì)量的產(chǎn)品按時完成和發(fā)布的專職管理人員。他根據(jù)任務(wù)的需求,負(fù)責(zé)產(chǎn)品功能的定義規(guī)劃和設(shè)計??傊?,產(chǎn)品經(jīng)理就是全面負(fù)責(zé)產(chǎn)品的最終完成。而一個優(yōu)秀的產(chǎn)品經(jīng)理,往往會在互聯(lián)網(wǎng)公司起到?jīng)Q定性的作用。所以,大家應(yīng)該都明白,優(yōu)秀的產(chǎn)品經(jīng)理薪資是肯定不會低的。
技術(shù)(開發(fā))
小職這里說的技術(shù)包括了工程師、UI等等,當(dāng)產(chǎn)品經(jīng)理把產(chǎn)品設(shè)計好之后,這時候就需要技術(shù)去實現(xiàn)開發(fā)的工作了,這是一個把產(chǎn)品從設(shè)想到實現(xiàn)的過程,小職相信,每一位技術(shù)人員把一款產(chǎn)品從無到有開發(fā)出來以后都會有一種發(fā)自內(nèi)心的自豪感!當(dāng)然了,技術(shù)這個行業(yè)每天都需要學(xué)習(xí)新的知識,否則很快就會被淘汰的,只有不斷學(xué)習(xí)新的技術(shù),才能走的更好,更遠(yuǎn),更穩(wěn)。還有一些技術(shù)后期轉(zhuǎn)到管理崗來管理手底下的員工,這樣一來本身的薪資都比較豐厚,上了管理崗位之后就越來越豐厚了,年薪百萬不是什么夢。
運營
互聯(lián)網(wǎng)公司三大崗位:開發(fā),產(chǎn)品,運營。三者的入門門檻依次降低,工作前幾年的工資待遇依次降低,但從未來的爆發(fā)性和成長性看依次升高。說到底是因為業(yè)務(wù)方對公司的價值最明顯。一個最簡單的例子,一個產(chǎn)品從無到有的路徑依次為,運營確定市場策略和打法,從用戶收集需求,將需求傳遞給產(chǎn)品;產(chǎn)品經(jīng)理把需求整理成可以開發(fā)的產(chǎn)品方案,最后再給到開發(fā)。所以一個公司產(chǎn)品怎么做,其實源頭在于運營對于市場和用戶的把握能力。
互聯(lián)網(wǎng)運營的目標(biāo)是:擴大用戶群,提高用戶活躍度,改進產(chǎn)品體驗,尋找合適的盈利模式/增加收入。運營是一項從內(nèi)容建設(shè),用戶維護,活動策劃三個層面來管理產(chǎn)品內(nèi)容和用戶的職業(yè)。所以從字面來理解,運營的工作會包括寫文案,做活動策劃,跟用戶進行深層次溝通,了解他們的需求,后期跟產(chǎn)品經(jīng)理溝通,不斷完成產(chǎn)品的迭代與更新。往往工作經(jīng)驗在五六年以上的運營人員年薪應(yīng)該在幾十萬和百萬之間。
綜合上述,小職認(rèn)為并沒有什么哪個崗位好,哪個崗位差的,最主要的是適合,只要你適合這一職業(yè),好好努力學(xué)習(xí),總有出人頭地的一天。
年會辦得最好的是互聯(lián)網(wǎng)公司,最大的贏家是它 互聯(lián)網(wǎng)視頻課程
標(biāo)題:年會辦得最好的是互聯(lián)網(wǎng)公司,最大的贏家是它
馬上過年,先給大家拜個早年。不知道最近大家參加年會了沒有,有沒有最大獎呢?據(jù)說,今年最大的贏家是互聯(lián)網(wǎng)公司。不信,你看
不過,互聯(lián)網(wǎng)公司要想開年會,是不是這么容易,特別是有很多程序員在場。因為抽獎程序不好寫,大家都是程序員,又誰相信你寫的程序會沒有BUG呢?所以,開不好,就會變成一個找BUG晚會
你要是沒有抽獎環(huán)節(jié)吧,這樣也沒有意思。
所以說,很難。 不過,小編還是比較佩服這家公司的。 你看人家這年會,滿滿的正能量
這是一家微商狼性團隊的年會,看著就讓人感覺大氣、威嚴(yán),充滿了力量(也有點痛)。
結(jié)束時,再來一首感恩的心,完美!
怎么樣,是不是年會最大的羸家?
年會辦得最好的是互聯(lián)網(wǎng)公司,最大的贏家是它 互聯(lián)網(wǎng)視頻課程
標(biāo)題:年會辦得最好的是互聯(lián)網(wǎng)公司,最大的贏家是它
馬上過年,先給大家拜個早年。不知道最近大家參加年會了沒有,有沒有最大獎呢?據(jù)說,今年最大的贏家是互聯(lián)網(wǎng)公司。不信,你看
不過,互聯(lián)網(wǎng)公司要想開年會,是不是這么容易,特別是有很多程序員在場。因為抽獎程序不好寫,大家都是程序員,又誰相信你寫的程序會沒有BUG呢?所以,開不好,就會變成一個找BUG晚會
你要是沒有抽獎環(huán)節(jié)吧,這樣也沒有意思。
所以說,很難。 不過,小編還是比較佩服這家公司的。 你看人家這年會,滿滿的正能量
這是一家微商狼性團隊的年會,看著就讓人感覺大氣、威嚴(yán),充滿了力量(也有點痛)。
結(jié)束時,再來一首感恩的心,完美!
怎么樣,是不是年會最大的羸家?