原本想上傳文件的,上傳半天沒反應,只有這樣了,圖片不知道能顯示不。sql
上午數據庫
學到2012.1.13 七天課apache
第一天(入門)2、3、四天(VUGEN腳本)瀏覽器
五天(Controller)六天(Analyse分析) 七天(流程,報告、其它)緩存
三到五年,才能夠成爲高級性能測試工程師 七天學完是初中級測試工程師服務器
性能測試工程師=測試工程師+系統管理員 功能測試工程師=開發(寫腳本、代碼)網絡
測試團隊:項目團隊1 項目團隊2 項目團隊3 自動化團隊(應該是作開發出身的,若是是作測試出身的,自動化不會作好,他們主要寫框架,與技術有關) 性能測試團隊併發
學測試的人,會進入項目團隊(去寫腳本,與業務有關)框架
性能測試團隊(輔助於功能測試團隊)工具
上課內容:一、什麼是性能測試二、性能測試評估指標三、性能測試工具四、性能測試原理
五、LoadRunner性能測試解決方案六、LoadRunner的安裝與部署
奧運定票系統崩潰:1小時,800萬次 1分鐘13萬次 2300/秒
Alexa排名流量排名
性能測試正常設計是容量的3倍 業務估計(經驗不夠)不足,是性能測試的最大失敗
網站要考慮限流的問題、分配訪問(網管應該想到的技術問題)
效率特性:時間特性(執行某一功能的響應時間和吞吐率的特性)、資源利用特性(資源利用率)
一、什麼是性能測試:在必定負載的狀況下,被測系統的響應時間、吞吐率、資源利用率是否知足性能需求
什麼是負載:前提是因被測系統不一樣而議。人在精神、體力上均有負載的概念。負載是在評價一個強度的問題。
測瀏覽器的性能:能打開多少個Table,看負載
測人人網的性能:點擊量、登陸、搜索(業務的不一樣方面)……看負載
計算機:多運行進程,產生負載
壓力—>強度(看業務的不一樣方面,有多是請求、進程或Table等)
二、性能測試評估指標:響應時間、吞吐率、資源利用率
響應時間:不是一個系統的響應時間是一個綜合的響應時間(包括登陸、搜索等)
a.業務b.用戶角度、開發角度(測試時只關注了開發,有可能用戶訪問時會很慢,不一樣網絡運營商訪問)
LoadRunner能夠模擬帶寬,帶寬限制
用ADSK帳號登陸服務器模擬 開發感覺t2+t3的響應時間 用戶能感覺的是t1+t2+t3的響應時間
網管應作相應的處理網通訪問電信電信訪問網通等看響應時間
吞吐量(概念有分歧):單位時間內完成工做的度量
資源:OS(操做系統資源):CPU、內存、磁盤IO、交換空間(虛擬內存)
服務器資源:Mysql\Tomcat(鏈接數、服務器的內存使用狀況)
三、性能測試工具:WAS(Microsoft)、Jmeter(open source)、ab(apache)、LoadRunner(HP)、QAload、Webload
開發比較喜歡用Jmeter和ab專業的測試經常使用LoadRunner
如何選擇性能工具:被測系統特色(業務)、產生的併發數(負載)、產生的協議、價格
概念的區別: 在線用戶和併發用戶比較容易混淆
性能測試的說法(用來拼品牌的) |
互聯網的說法 |
系統用戶 |
註冊用戶、數據庫內的用戶 |
在線用戶 |
活動用戶/只要用戶登陸且沒有退出 不作任何操做時,對服務器沒有負載,HTTP請求登陸完成後,服務器會自動斷開鏈接,因此對服務器沒有負載。佔用內存,但不佔用鏈接數 |
併發用戶 |
某一時刻,同時訪問系統的用戶數 |
因(負載)果(指標) 因(併發用戶)果(負載)
Http協議Https(加密的協議)協議:雙方共同遵照的約定 B/S:HTTP HTTPS C/S:TCP/IP UDP
HttpWatch工具:網絡錄製工具(抓包) 不支持回放 工具不是目的,而是手段
Http協議:
點擊量:用戶一次點擊過程當中,真正的向服務器發送的產生的請求數是點擊量,不等於用戶的請求數,不是用戶點擊一下的量
下午
四、性能測試原理:關心協議(請求包、響應包、返回碼(500、40一、404……))用不用瀏覽器沒有關係
返回碼:2XX成功 200請求成功(創建鏈接、發請求、接收請求、斷開)
3XX重定向 304(請求頭有個If-Modified-Since截止到某一日期內文件沒有被修改,服務器不作接收請求 創建鏈接、發請求、斷開)
重定向:原本應該在服務器取數據,但可從客戶端的緩存中讀取
4XX客戶端錯誤 404沒法找到指定位置的資源
5XX 500內部服務器錯誤
Referer:圖片的請求包多出這一條,Referer表明本請求(圖片)在哪一個頁面發出的,防止「盜鏈」用的
自動化工具:作功能測試,記錄對象的用戶名或密碼的位置和操做過程,順序執行
性能測試工具:只要協議相通,關心協議內容,只關心傳過來的用戶名和密碼
性能測試工做原理:一、錄製(協議頭) 二、回放(協議內容)
五、LoadRunner性能測試解決方案
Virtual User Generator錄製並回發單個進程
Controller告訴Generator如何工做 程序、腳本、協議
Controller的工做內容:1、找壓力測試機(壓力機會模擬虛擬用戶工做)
2、分配工做(壓力機高度,定義併發數)
3、定時間(壓力機運行的時間)
4、腳本(VUGEN虛擬用戶生成器)
5、調度(讓壓力機幹活—>壓力機運行腳本—>對SUT(被測系統)產生負載—>
被測系統內裝的monitor(監控器)—>把內容發回到Controller—>DB—>Analysis)
1、找演員(找壓力機) 2、找劇本(找VUGEN創建關係) 3、演員在何時演什麼劇本(場景搭建)
Analysis結果分析器(圖表和報表比較難分析出問題,若是看不懂圖,就至關於沒作性能測試)
若是協議不同,能夠致使腳本和結果分析器不一樣,性能指標會不一樣
Scenario場景:Controller的工做 場景設計很是關鍵
六、LoadRunner的安裝與部署
四個組件:Controller、VuGen、Analysis、Load Generator
Agent負責