效能測試(1)-開篇雜談
自學效能測試很辛苦。所以想趁著我學習的時候,記錄下我的一點一滴。等到將來拿出來看的時候,可以有東西來給我回味。
我呢,本來學校出來是做開發的,但是呢,工作難找,誰會要要乙個專科而且沒有經驗大學生來寫**呢?找工作,很不容易,到處受挫折。為了得到那萬惡的rmb來買自己心愛的顯示卡來打遊戲,曾經一度去了工地,拿起了大錘。當起了聖騎士(其實就是小民工)。嘴裡還高喊"大地母親忽悠著你~",然後猛地一錘子落下,再費力的舉起大錘,高喊"為了辛多雷的榮耀~",又是一錘子。我果然不甘心這種生活,所以決定"先就業,再擇業"選擇了低門檻的測試行業,信誓旦旦的想著,先做兩年,等我有經驗了再轉開發。可是現實不容許我這樣。這條錯路想回頭太艱難了。所以呢,既然走錯了了路。就將錯就錯吧,所以我走在測試的路上發現了很多東西,發現測試不是人們看到的那麼低門檻的職業。與我年幼時的夢想相近。"黑客"每乙個搞計算機的人,誰沒有夢想過黑客呢?而測試行業跟"黑客"真的隔得太近了。簡直就像是在黑客破壞系統前,先把系統破壞掉。預估到這種風險的可能,然後修復。所以我開始正視測試行業了,真正快樂的人是那種在走彎路時也不忘享受風景的人。o(∩_∩)o~
理論上效能測試工程師需要達到的標準:
是否能夠獨立開發指令碼
能否對需求進行效能分析並獲得效能需求
能否開發指令碼和場景完成對使用者行為的模擬
能否通過效能測試發現比較具體的效能瓶頸
能否根據效能瓶頸提出有效的調優方案
文件編寫環境搭建的能力
團隊協作與溝通的能力
效能測試工程師需要掌握的技能:
c/c++,因為c配上loadrunner是很常見的效能測試員應該具備的實力
loadrunner,可以模擬大量的使用者進行壓力測試。工具有很多種,但是lr是典型。關鍵是知道執行原理,和自己想要的需求是什麼。我之所以用lr是因為我在做遊戲中的壓力測試時,需要很有遊戲玩家上線走動,而請這麼多的玩家,公司消費很大,所以可以用lr模擬玩家的訊息請求。來做很多個機械人在遊戲裡面走動。
sql,熟悉資料庫可以用來造資料,你說,lr可以造資料啊,但是大量的資料怎麼辦呢?20w條玩家資料,你用lr刷一晚上,都未必能刷完。而用資料庫,也許就幾時分鐘或者幾小時的事情。而且據大神說,效能調優,有70%的問題是來自資料庫。所以資料庫學好,很有必要的。
linux/windows,學好作業系統,能讓你對系統更加了解自己所用的東西,**可能會出現缺陷。如果不了解作業系統原理,不了解作業系統的內部結構和其向使用者提供的很多重要的庫函式和系統呼叫,就不能有效的發現這些軟體的缺陷。也不知道出了問題該怎麼維護。
tcp/ip協議,學好網路不會有錯的。不管是用來攻擊還是防禦,都是一門很有意思的學問。我們測試,說白了就是"破壞"。像黑客一樣,能比黑客先破壞掉系統的安全並且修復。可能系統上線的時候會少很多麻煩。
配電腦,會配電腦就會對一些cpu指標呀,記憶體指標特別敏感。什麼樣的電壓會造成系統不穩定啊,什麼樣的記憶體會不相容。所以會配電腦,也是可以提公升效能測試的水平的。
效能測試的一些總結和歸納
從上圖看效能測試基本佔了整個軟體測試50%的測試內容,如負載測試,壓力測試,效能測試,大資料測試。等等。可想而知效能測試在測試中的重要性。
其實效能測試,就是洗白的了黑客。每個搞計算機的,誰沒有想當黑客的夢想呢。下面是一些高手總結黑客的學習方向。希望能幫助到有興趣的朋友。
效能測試的概念
效能測試(performance testing)
在一定的負載情況下,系統的響應時間等特性是否滿足特定的效能需求,從某些角度來說,效能其實是功能的一種。
對於系統測試來說,作為乙個優秀的系統測試工程師需要有"系統"的視角,來分析被測系統。
功能測試:某個功能點
效能測試:整個系統包括軟體和硬體
軟體測試是指:
在規定條件下,相對於所用資源的數量,軟體產品可提供適當效能的能力。
資源可能包括其他軟體產品、系統的軟體和硬體配置。對於使用者操作的系統,功能性、可靠性、易用性和效率的組合可以由使用質量從外部進行測量。
衡量乙個軟體的效能,需要從軟體效率的一下3點考慮
時間特性
---在規定條件下,軟體產品執行其功能時,提供適當的響應和處理時間以及吞吐率的能力
資源利用性
---在規定條件下,軟體產品執行其功能時,使用合適數量和類別的資源的能力。
效率依從性
---軟體產品遵循與效率相關的標準或約定的能力
也就是說,我們需要確保軟體在一定的資源下達到一定的效能,並且遵守相關的標準或協議。例如我們從來不會奢望以太80386的電腦能夠在1分鐘內啟動完成winodws系統,因為我們知道這樣的硬體違反了產品的標準。但是如果一台高階的主流配置電腦在1分鐘內無法啟動windows系統,你就會開始懷疑是不是自己的硬體存在某些問題,如果是硬體問題,那麼你就會覺得這個作業系統慢,不好用了。
所以作為乙個效能測試工程師的主要工作目標就是確保系統能夠在一定的硬體、軟體環境下達到一定的效能指標。
效能測試之開篇
2 效能測試分類 1 效能測試 狹義 效能測試方法是通過模擬生產執行的業務壓力量和使用場景組合,測試系統的效能是否滿足生產效能要求。通俗地說,這種方法就是要在特定的執行條件下驗證系統的能力狀態。特點 1 這種方法的主要目的是驗證系統是否有系統宣稱具有的能力。2 這種方法要事先了解被測試系統經典場景,...
Jmeter效能測試1 效能測試指標
使用者角度 對請求所作出響應所需要的時間,是使用者感知軟體效能的主要指標 a 使用者客戶端的響應時間 b 請求 響應資料網路傳輸時間 c 資料庫的處理時間 d 應用伺服器的響應時間 響應時間多少合理 響應時間為2 5 8秒 併發 用於從業務的角度模擬真實使用者訪問同時訪問。併發數 同時訪問系統的使用...
golang 效能測試 1 基準效能測試
本文介紹golang 如何做基準效能測試。編寫完 除了跑必要的單元測試外,還需要考慮 跑起來的效能如何。效能的衡量其實就是程式執行時候程序的記憶體分配,cpu消耗情況。golang 語言在提供了功能測試的基礎上,提供了豐富的效能測試功能。首先,從乙個例子來講起。隨便寫乙個簡單的快速排序,然後和系統自...