軟件測試入行是2006年,最早學習的測試工具囊括了QTP,Test Director,Load Runner,Rational Robot,Rational Performance;html
那時的操做系統是2003 和 XP,Vista還用不起,微信還沒誕生,QQ正壯年,嗯IE6正牛,Firefox也挺好的,Chrome還沒聽過呢;數據庫
那時咱們沒有云,沒有虛擬化,沒有筆記本,沒有Mac,只有電腦城組裝的單核AMD臺式機(512MB內存);瀏覽器
當時軟件測試工程師培訓,須要繳納2600的培訓費,當時想那都是天價,一個月學校生活費才200塊,如今想來好便宜呢。服務器
感謝裸奔的螞蟻帶咱們入行,讓咱們有了自食其力的能力,一口氣幹了十幾年,成爲測試行業裏的老兵。微信
記得當時服務器都才2G內存,跑個IIS或Tomcat,也基本沒有什麼性能問題,性能測試都遇不到;網絡
印象最深的是當時老師問咱們,大家有認識懂AIX小機的人嗎?他遇到了一個問題,開發出來的WEB應用,在PC服務器上跑的槓槓的,但換了AIX平臺後,慢得跟蝸牛同樣;架構
咱們第一沒接觸過PC服務器和Windows 2003 Server,第二沒接觸太小型機,更沒有接觸過IBM的牛叉AIX系統;重點是不會性能測試。併發
隨後2007年畢業開始第一份工做,工做中有幸接觸公司的高大上項目,開始接觸Windows 2003 R2 64位服務器IBM X3850,開始接觸VMware workstation虛擬機,開始接觸Webblogic 9,開始接觸IBM AIX小型機,開始接觸 Sybase 列存儲數據庫,Cognos BI報表和OLAP,MySQL集羣,Oracle集羣,開始接觸數據挖掘,機器學習,時間序列,聚類,分類等數學和統計學知識。機器學習
接觸的多了,慢慢的也就開始進行性能測試,記得在公司內本身512MB的臺式機上執行Load Runner性能測試腳本,20個併發,就把1G內存測試服務器Tomcat整的慢糟糟,帶個人師傅問我,你在幹什麼,服務器咋這麼慢?我只是嘿嘿的笑,不敢說。工具
曾幾什麼時候,作性能測試,腳本錄製,虛擬用戶生成都得在本身的PC上完成,縱使用了3G內存的筆記本,千兆網卡,也很難模擬真實的網絡併發訪問,因此就了個笑話,測試供電局的企業門戶Portal,我給物理機服務器測試完,說不能知足50併發發訪問,須要擴容,但項目經理說你這測試的不許,比當前配置糟糕的多的虛擬機,跑起來都能撐得住500在線訪問呢,我一時也是無言以對。
後來仔細想一想,個人PC筆記本帶寬爆滿和硬盤訪問速度,以及CPU使用率太高,都是形成測試不許確的緣由。
隨後就有小夥伴吸收了個人教訓,在PC筆記本上錄製和調試性能測試腳本,在另外的PC服務器上安裝Load Generator來生成併發負載,以下降PC筆記本的測試影響,還原真實測試場景。
這也就有了後來我寫的如何在AIX/Unix/Linux上安裝Load Generator的文章https://www.cnblogs.com/xiaoTT/archive/2012/02/15/2352127.html
就在這樣摸着石頭過河的狀況下,性能測試開展了5年多,也組建起了公司的性能測試小團隊。
時間回到2019年,最近看到本身所在公司的性能測試架構,也算是開了眼界,Load runner的Load Generator組件,都已經使用Docker鏡像了,能夠隨時在雲端擴展,大大提高了性能測試的可信度和健壯性;另外基於Quality Center的控制中心,能夠快速的的部署測試腳本,執行測試,並收集測試結果進行分析和報告。十多年前,沒有按時按需付費發雲資源,要作個測試真實比登天還難,就有了業界的說法,作性能測試,必須會安裝Load runner,還要會處理各類安裝錯誤,腳本錄製錯誤,腳本執行錯誤;可是回頭想一想,本身也算是有腦子的,2010年開始,都是講Loadrunner直接安裝在Win2003 32位服務器上,並作成VMware鏡像系統,哪一個項目須要作性能測試,不再愁安裝了,直接解壓虛擬機,跑起來就能夠了,給本身點個👍。想一想這應該是Docker的雛形吧,哈哈哈。
時下Load runner已是12.60版本了,支持了IE,Chrome,Firefox等瀏覽器,安裝和使用等錯誤也少多了,但性能測試卻不多有人用Load Runner了。
去年接觸到阿里雲的性能測試組件PTS (Performance Test Suite),牛到的程度讓我折服,它能夠快速定製腳本,對接口URL,API,和系統功能進行性能測試,無需關注性能測試負載如何生成,只要你買了足夠的測試時長License,秒級加壓真的是不費吹灰之力,雲解決方案就是這麼牛🐂。
說到性能測試,不得很少說點感悟。有時性能測試就是單用戶測試,好比當系統有性能缺陷時,一個用戶都慢,還用Loadrunner去壓嗎?答案是確定的,不用,用的工具能夠是HTTP Watcher或Fiddler這樣的小工具,去研究每一個請求的耗時;也能夠像當年的QQ空間同樣,本身在程序裏寫計時器,加探針,當展示慢點時候,提示用戶下降顯示點酷炫程度,來保證正常使用。
企業級性能測試,主要解決點是企業內全部開發出軟件產品、項目的性能問題,或規避性能問題。開發過程當中能夠進行強制要求,進行組件級別的性能測試評估;上線後進行性能評估和探針探測;運行一段時間後,進行探針數據收集和分析,再進行數據量、訪問量、訪問規律等多方面的分析,評估和規避性能瓶頸。
企業級的性能團隊,更注重的是防護,調優,而不是測試自己,測試不能解決問題,但測試能夠幫助找出方向。
性能測試任重道遠,須要有興趣的同仁一塊兒參與和學習,願國產軟件和解決方案能夠更加出色,解決軟件工程領域的燃眉之急。