做網(wǎng)站哪家南京做網(wǎng)站中國培訓(xùn)網(wǎng)官網(wǎng)
歲月如梭,時光飛逝,一轉(zhuǎn)眼我已經(jīng)在測試這一行業(yè)摸爬滾打7年了。作為一個工作7年的tester,我想說說成長,說說我在搜狗的成長,說說我在測試人生的成長。
講故事前先做一下自我介紹,我叫諸葛東明,31歲,搜狗瀏覽器測試組Leader。2006年開始北漂生活,2008年加入搜狗,見證了搜狗瀏覽器的誕生,然后陪著它一起走到今天。
7年之間,我已經(jīng)數(shù)不清上線了多少個版本、運行了多少遍測試用例、提交了多少個BUG、奮戰(zhàn)了多少個通宵達(dá)旦,但是忘不了每次戰(zhàn)友離開時那淡淡的憂傷。
曾經(jīng)多次有人問我,為什么你還不跳槽?
因為一份堅持,從我的leader、從我的BOSS身上學(xué)到的那份堅持。也許它聽起來有點冠冕堂皇,但聽我慢慢道來。
故事之一:
時間大概是在2009年。在瀏覽器各項指標(biāo)中,項目組上下一直極為重視瀏覽器的穩(wěn)定性指標(biāo),也就是瀏覽器的崩潰率。為了改善這一崩潰率,只是通過常規(guī)的手工測試手段是保證不了的,這需要使用自動化技術(shù)。
起先,我們使用了BHO技術(shù)來完成瀏覽器內(nèi)核的自動化測試,自動化腳本可以使得瀏覽器自動地進(jìn)行前進(jìn)、后退、導(dǎo)航和刷新等操作。但是這一技術(shù)的缺陷是無法進(jìn)行瀏覽器內(nèi)核以外功能的自動化操作,所以隨著新功能不斷地增多,BHO技術(shù)已經(jīng)無法滿足。
之后,我們嘗試使用業(yè)界比較成熟的QTP進(jìn)行自動化測試,通過控件識別+鍵盤快捷鍵等方式,內(nèi)核之外的功能也逐步納入到穩(wěn)定性測試之中。但是隨著瀏覽器2.0版本的發(fā)布,內(nèi)核變?yōu)門rident+Webkit雙內(nèi)核,QTP無法有效識別Webkit內(nèi)核的控件。
此外,更多的困難也隨著項目的行進(jìn)不斷地暴露出來:
QTP 軟件體積龐大,隨著測試機由兩臺不斷擴充到幾十臺,每次部署到新環(huán)境非常耗時間。
QTP 自動化腳本日積月累,已經(jīng)龐大到幾十個組合動作,腳本維護(hù)成本巨大。
QTP 所使用的 vbscript 腳本無法支持多線程等功能,這使得自動化腳本所能操作的對象比較有局限性。
我個人的測試工作已經(jīng)忙得沒日沒夜,同時還要維護(hù)自動化腳本。
更為致命的一點,自動化腳本的作用受到質(zhì)疑。每次瀏覽器上線前,自動化測試沒有發(fā)現(xiàn)什么問題,但是上線后仍然有大量的崩潰問題,這些崩潰問題在測試環(huán)境沒有被提前發(fā)現(xiàn)。
諸多的困難之下,我逐漸對自動化喪失信心,開始質(zhì)疑這一方法的可行性。在我的學(xué)習(xí)經(jīng)歷中,所接受到的知識是自動化技術(shù)是用于解決重復(fù)性的、有預(yù)期結(jié)果的測試用例回歸,我們只能讓機器按照我們提前設(shè)定好的步驟去執(zhí)行,然后對比實際結(jié)果是不是符合預(yù)期。而使用自動化技術(shù)進(jìn)行隨機性的操作去發(fā)現(xiàn)未知的問題,這行不通。
因為這個問題,我和我的老大魯劍爭論了多次,我堅持認(rèn)為證明自動化發(fā)現(xiàn)不了未知的問題,過去一年多的實踐就是最好證明。而魯劍始終堅信自動化可以發(fā)現(xiàn)影響瀏覽器的穩(wěn)定性問題,未來可以作為評估瀏覽器的上線標(biāo)準(zhǔn)。
我放棄了,但是魯劍沒有放棄。
他后來做了兩件事:第一,讓測試開發(fā)林飛使用python重寫穩(wěn)定性自動化腳本,以此來克服QTP的諸多問題。第二,讓林飛每天查看瀏覽器的崩潰棧,根據(jù)棧信息分析可能的操作路徑,然后將這些操作路徑轉(zhuǎn)化為自動化腳本。這項工作大概持續(xù)了一個月之久,林飛通過每天不斷地動作補充,建立了三百個龐大的瀏覽器動作組合腳本?;趐ython面向?qū)ο蟮奶匦院透鼮楦咝У碾S機算法,穩(wěn)定性腳本在效率、問題發(fā)現(xiàn)能力和腳本可維護(hù)性上都取得了進(jìn)步。
通過這個腳本,我們多次在測試階段就發(fā)現(xiàn)了潛在的崩潰問題,避免了問題的遺漏。這一通過隨機瀏覽自動化測試的方式,已經(jīng)成為國內(nèi)瀏覽器廠商必備的評估方法。
故事之二:
時間大概也是在2009年,距離搜狗瀏覽器第一個版本上線后的半年。有一天,公司突然發(fā)全員郵件,告知王小川已不再管理搜索團(tuán)隊,只負(fù)責(zé)桌面團(tuán)隊的管理工作。這意味著什么,小川管理的團(tuán)隊攔腰砍半,原因可能是老張Charles和小川意見不合,不支持研發(fā)搜狗瀏覽器。
一般人遇到這種情況,自己努力工作卻不被上級老板支持,也許就此放棄收拾收拾就走人了,但是在我眼里的小川是這樣的:
他不但沒有消極應(yīng)對,反倒在瀏覽器上加大了精力投入。他那時每天會花 2 小時對瀏覽器進(jìn)行測試,經(jīng)常會報一些路徑復(fù)雜的BUG給我們。作為測試你會懂那份壓力的,你的大BOSS掌管著一個上百人的公司,他不但每天要處理各個產(chǎn)品線的管理事務(wù),而且每天都在測試你測試的產(chǎn)品,發(fā)現(xiàn)你發(fā)現(xiàn)不了的BUG!與小川共事多年的Better說,從未見過小川在瀏覽器上投入如此大的精力,他甚至已經(jīng)不管那時的搜狗音樂盒項目了。
那時候我下班都很晚,基本上是晚上 11 點以后。工位上已經(jīng)沒有多少人,只剩下瀏覽器的開發(fā)和測試。小川也沒走,他有時會走到我們的工位上轉(zhuǎn)轉(zhuǎn)聊聊,自郵件一事之后,我見他嘴角多了不少裂紋,那是著急上火的原因。
隱忍一年之后,搜狗瀏覽器 2.0 上線。上線當(dāng)天還出現(xiàn)了一點小意外,小川在向Charles 演示瀏覽器的時候出現(xiàn)了 BUG,我們緊急趕到 Charles 的會議室來處理,我雖然難忘在大 BOSS 前處理 BUG 的窘境,但是更加難忘小川緊坐在 Charlse 旁,不斷地講解著瀏覽器的作用和價值,眼神中流露著那份渴求得到認(rèn)可的期望。
最終瀏覽器被老板認(rèn)可,小川重新執(zhí)掌搜索部門,搜狗得到新生,分拆獨立之后,從200人的搜狐研發(fā)部門,一路擴充為今天 3000 人的搜狗公司。
逆境之下,堅持不懈,不忘初衷。這就是我在搜狗最大的收獲。
最后,我想分享一段摘文來結(jié)束今天所講的故事,希望對各位小伙伴們有所啟發(fā)。
“未來的某一天,他們會回顧這段共同度過的時光,對于那些痛苦的時刻,只是過眼云煙,或者付之一笑,他們會把這段時光看做人生中奇妙的巔峰時刻?!?/p>
--摘錄自: [美]沃爾特·艾薩克森. “史蒂夫·喬布斯傳
最后:
可以到我的個人號:atstudy-js,可以免費領(lǐng)取一份10G軟件測試工程師面試寶典文檔資料。以及相對應(yīng)的視頻學(xué)習(xí)教程免費分享!其中包括了有基礎(chǔ)知識、Linux必備、Mysql數(shù)據(jù)庫、抓包工具、接口測試工具、測試進(jìn)階-Python編程、Web自動化測試、APP自動化測試、接口自動化測試、測試高級持續(xù)集成、測試架構(gòu)開發(fā)測試框架、性能測試等。
這些測試資料,對于做【軟件測試】的朋友來說應(yīng)該是最全面最完整的備戰(zhàn)倉庫,這個倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你!