效能測試專案篇

weixin_33912246發表於2018-09-10

效能測試專案篇

1.效能測試怎麼做的?

參考答案: 比如,我這個xxx專案的效能測試是這樣做的:

1.做效能需求分析,挑選了使用者使用最頻繁的功能來做效能測試,比如:登陸,搜尋,提交訂單,確定效能指標,比如:事務通過率為100%,90%的事務響應時間不超過5秒,併發使用者為1000人,CPU和記憶體的使用率為70%以下(*)

2.效能測試計劃,明確測試時間(通常在功能穩定後,如第一輪測試後進行)和測試環境和測試工具的選擇

3.編寫效能測試用例

4.搭建效能測試環境,準備好效能測試資料(*)

5.通過效能測試用例,編寫效能測試指令碼

6.效能測試指令碼進行調優,設定檢查點、引數化、關聯、集合點、事務,調整思考時間,刪除冗餘的指令碼等(*)

7.設計效能測試場景,使用nmon工具監控伺服器,執行測試場景(*)

8.分析效能測試結果,如果有問題(效能瓶頸),收集相關的日誌和圖片提單給開發修改(*)

9.開發修改好後,迴歸效能測試(*)

10.編寫效能測試報告(*)

2.如何確定系統能夠承載的最大使用者數?

參考答案:通過負載測試,不斷增加使用者數,隨著使用者數的增加,各項效能指標也會相應產生變化,當出現了效能拐點,比如,當使用者數達到某個數量級時,響應時間突然增長,那麼這個拐點處對應的使用者數就是系統能承載的最大使用者數。

 3.你們系統哪些地方(哪些功能)做了效能測試?

參考答案:我們選用了使用者使用最頻繁的功能來做效能測試,比如:登陸,搜尋,提交訂單。

4.你們的併發使用者數是怎麼確定的?

參考答案: 1)、這種電商(面向網際網路使用者)的系統,我們是會先上線一段時間,根據收集到的使用者訪問資料進行預估的。 2)、從需求來的。

5.你們效能測試在哪裡做的?

參考答案:我們會搭建一套獨立的效能測試環境進行測試。

6.你們效能測試什麼時間做?

參考答案:功能測試之後,系統比較穩定的時候再做。 ***********************************************

7.怎樣分析效能測試結果?

參考答案: 思路:首先檢視結果概況,檢視有沒有大面積失敗的事務,有沒有大量Error的數,虛擬使用者數有沒有正常載入,點選率和HTTP響應曲率是否一致,如果都正常,表明測試結果可信,可以繼續分析其他效能指標,比如,確認響應時間,事務通過率,CPU等指標是否滿足需求;如果測試結果不可信,要分析異常的原因,修改後重新測試。

在確定效能測試結果可信後,如果發現以下問題,就按下面提供的思路來定位問題:

問題一:響應時間不達標 分析思路:新增“網頁細分圖”,選中要細分的事務,選擇”第一次緩衝時間”,檢視事務所消耗的時間主要在網路傳輸還是伺服器,如果是網路,就結合Throughput(網路吞吐量)圖,計算頻寬是否存在瓶頸,如果存在瓶頸,就要考慮增加頻寬,或對資料的傳輸進行壓縮處理;如果不存在瓶頸,那麼,可能是網路不穩定導致。如果主要時間是消耗在伺服器上,就要分別檢視web伺服器和資料庫伺服器的CPU,記憶體的使用率是否過高,因為過高的CPU,記憶體必定會造成響應時間過長,如果是web伺服器的問題,就把web伺服器對應上對應的使用者操作日誌取下來,發給開發定位;如果是資料庫的問題,就把資料庫伺服器對應上對應的日誌取下來,發給開發定位。 --------- 遇到下面這些問題,都可以說:把伺服器對應的日誌取下來發給開發定位

 問題二:web伺服器CPU超過效能測試指標

分析思路:就把web伺服器對應上對應的使用者操作日誌取下來,發給開發定位。

問題三:資料庫CPU超過效能測試指標 分析思路:把資料庫伺服器對應上對應的日誌取下來,發給開發定位。

 問題四:記憶體洩漏 分析思路:把記憶體的heap資料取下來,在用MAT工具分析是哪個物件消耗記憶體最多,然後發給開發定位。

問題五:程式在單使用者場景下執行成功,多使用者執行則失敗,提示連不上伺服器。

原因:程式沒有做多執行緒處理。

問題六:程式實現的功能是,隨機給使用者分配不同的任務,單使用者執行時,能成功分配;多使用者併發申請任務時,所有使用者得到的任務都是一樣的。

原因:程式存線上程同步的問題。

***********************************************

8.如果效能測試指令碼出現錯誤,會從哪些方面分析呢

參考答案:通過檢查回放日誌,定位出錯的位置,然後做響應的修改。回放指令碼時指令碼出錯,一般有兩種原因,第一、語法出錯,比如,不小心多打了個符合;第二、關聯的左右邊界沒設定對,導致關聯失敗;如果在執行場景的時候,提示指令碼出錯,一般就是引數化列表最後一行沒有回車,或者,回車大於一個,或者,引數值不夠用。

9.如何判斷系統的效能是變好了還是變壞了

參考答案:做迴歸測試時,看系統的TPS是不是增加了。

10.你們的效能測試需求哪裡來的?

參考答案:我們的需求文件上有的,不過有時候不太合理,我們可能需要和BA進行討論。比如,我之前做了一個公司內部用的OA系統的效能測試時,要求併發使用者200人,我們整個公司都沒有100人,很明顯,做200人併發是沒有必要的,後來,我們只做了50人併發。

11.如何實現200使用者的併發?

參考答案:先在指令碼對應的請求前面新增集合點,再在controller中將集合點的釋放策略設定為等到200人到達集合點的時候在釋放。

12.什麼情況下要做關聯,關聯是怎麼做的?

參考答案:當指令碼需要使用伺服器返回來的值,就用關聯。 (手工關聯的步驟--可以這樣回答:錄製兩個指令碼,對比找到需要關聯的值,在返回該值的函式前插入關聯函式,用關聯函式名替換指令碼中的所有動態值)

13.有驗證碼的功能,怎麼做效能測試?

參考答案: 1)、將驗證碼暫時遮蔽,完成效能測試後,再恢復。注意:遮蔽驗證碼是不會給效能測試的結果帶來影響的。 2)、使用一個萬能的驗證碼。

14.LoadRunner有哪些部件組成?

參考答案:1、VuGen指令碼生成器2、controller場景,負載、壓力測試3、anylisise分析結果

15.簡述使用Loadrunner的步驟

參考答案: 新建指令碼 -- 選擇協議 — 指令碼錄製設定 — 錄製指令碼—除錯指令碼 — 場景設計和執行 — 結果分析。

16、你們效能測試做的是前臺還是後臺? 參考答案: BS的專案:我們這個專案做的是後臺伺服器的效能,瀏覽器端不做效能測試; APP的專案:手機端和伺服器端的效能都做,手機端我們是用monkey(或者 AppPerformace)來做,伺服器端,我們是用Jmeter來做的

17、效能測試指標有哪些?

事物成功率、網路佔用率、點選率、資源利用率、cpu使用率

18、常見錯誤的原因

1、伺服器錯誤

2、集合點策略的問題

3、引數的組合策略

4、思考時間的錯誤(思考時間未優化

相關文章