1. 性能測試,你需要了解這款工具

        共 2291字,需瀏覽 5分鐘

         ·

        2021-04-02 15:48

        聊技術(shù),不止于技術(shù)

        軟件全生命周期開發(fā)中,離不開測試工作,一款高可用的產(chǎn)品更離不開性能測試,常見的性能測試工具有Loadrunner、JMeter等,我們在這篇文章中主要介紹下JMeter,以便讓大家了解如何通過JMeter來進(jìn)行性能測試。

        1

        基本概念


        JMeter是一款開源的純Java編寫的性能測試工具,我們通??梢杂盟鼇頊y試Web應(yīng)用程序,當(dāng)然也可以用它來進(jìn)行一些其他測試,比如數(shù)據(jù)庫測試等。
        在這篇文章中,我們將通過使用JMeter來測試數(shù)據(jù)庫訪問并生成對應(yīng)的測試報告,來學(xué)習(xí)使用這款性能測試工具。通過這篇文章,相信大家可以對JMeter的使用有個初步的了解。

        2

        使用介紹


        1. 下載JMeter

        1) 到JMeter官網(wǎng)下載最新的發(fā)布版本包,此處下載的版本為apache-jmeter-5.0.zip
        2) JMeter為解壓即用免安裝的工具,解壓縮后文件目錄如下所示:
        JMeter解壓縮后文件目錄

        2. 運(yùn)行JMeter

        1) 進(jìn)入%JMETER_HOME%/bin目錄下(%JMETER_HOME%為解壓縮后路徑),雙擊jmeter.bat文件,打開JMeter客戶端界面,如下圖所示:
        雙擊jmeter.bat打開客戶端界面:
        JMeter客戶端主頁面展示了一項測試計劃,在這里我們保持測試計劃配置值為默認(rèn)值不變,后續(xù)我們將此項測試計劃中新建線程組,進(jìn)行數(shù)據(jù)庫訪問測試與生成測試文檔。
        注意因為我們要進(jìn)行數(shù)據(jù)庫訪問的測試,所以需要添加相應(yīng)的JDBC驅(qū)動包到classpath路徑下,點擊Browse添加相應(yīng)的驅(qū)動包,如下圖所示:
        點擊Browse添加相應(yīng)的驅(qū)動包:
        選擇mysql-connector-java驅(qū)動包,注意對應(yīng)的mysql版本:
        3. 進(jìn)行數(shù)據(jù)庫訪問測試并生成相應(yīng)測試文檔
        1) 右擊TestPlan,添加測試線程組,如下圖所示:
        添加成功后界面如下圖:
        上圖中有兩個參數(shù)需要注意:1、Number of Threads(users):指的是線程數(shù)量;2、Loop Count:為線程重復(fù)執(zhí)行次數(shù)。這兩個參數(shù)可以用來控制具體測試的執(zhí)行次數(shù),比如將線程數(shù)設(shè)置為10,重復(fù)執(zhí)行次數(shù)設(shè)置為10,那么相應(yīng)測試將執(zhí)行100次。
        2) 右擊Thread Group,添加JDBC Connection Configuration:
        添加后需要填寫如下圖所示3個部分:
        需要填寫內(nèi)容說明:1、連接池變量名,很重要,后續(xù)在創(chuàng)建JDBC Request測試取樣器中需要使用,用來獲取數(shù)據(jù)庫連接;2、連接池最大連接數(shù),這里就填10吧,即最大10個連接;3、數(shù)據(jù)庫連接配置,需填寫數(shù)據(jù)庫名、JDBC Driver class、用戶名、密碼。
        填寫完成后,相應(yīng)配置如下,大家根據(jù)自己的配置更改:
        3) 添加JDBC Request測試取樣器;
        一定要注意這里需填寫在2) 中配置的連接池變量名信息:
        填寫測試的sql語句,此處為對student表進(jìn)行插入操作:
        大家一定看到了上面用到了${randomVariable}占位符,那么這是什么?這是隨機(jī)數(shù)變量,方便測試的時候生成隨機(jī)數(shù)使用,所以我們還需要創(chuàng)建下隨機(jī)數(shù)變量。
        注意這里的變量名要與占位符中一樣哦,如下創(chuàng)建了一個隨機(jī)生成1—200的隨機(jī)數(shù)變量:
        4) 創(chuàng)建查看結(jié)果樹,用來查看具體請求的情況
        5) 創(chuàng)建聚合報告
        我們還需要創(chuàng)建聚合報告,用來對測試結(jié)果進(jìn)行聚合統(tǒng)計,生成測試報告。
        6) OK,準(zhǔn)備工作完成,我們來進(jìn)行實際測試了,點擊開始按鈕,對數(shù)據(jù)庫進(jìn)行100次插入操作,然后生成相應(yīng)測試報告。等等,怎么執(zhí)行100次操作?還記得1)中的兩個參數(shù)嗎?沒錯,我們將線程數(shù)設(shè)為10,重復(fù)執(zhí)行次數(shù)設(shè)為10,這樣就可以執(zhí)行100次插入操作了!設(shè)置成功后點擊開始執(zhí)行測試。
        執(zhí)行開始前會先讓你保存一下測試計劃,保存一下吧。執(zhí)行結(jié)束后便可以查看相應(yīng)的測試報告啦!
        查看結(jié)果樹展示了每個請求的相應(yīng)情況:
        聚合報告對所有請求進(jìn)行了聚合統(tǒng)計:
        為了方便大家看懂聚合報告,簡單說明下聚合報告中相應(yīng)參數(shù)的意思吧:
        參數(shù)
        含義
        Label相應(yīng)的測試名,我們進(jìn)行了數(shù)據(jù)庫訪問的測試,所以此處為JDBC Request
        #Samples發(fā)給服務(wù)器的請求數(shù),此處為100,也可以看出我們確實執(zhí)行了100次插入操作
        Average每個請求的平均響應(yīng)時間
        Median50%請求的響應(yīng)時間都不超過該數(shù)值
        90%Line90%請求的響應(yīng)時間都不超過該數(shù)值
        95%Line95%請求的響應(yīng)時間都不超過該數(shù)值
        99%Line99%請求的響應(yīng)時間都不超過該數(shù)值
        Min最小的響應(yīng)時間
        Max最大的響應(yīng)時間
        Error%錯誤率=錯誤的請求的數(shù)量/請求的總數(shù)
        Throughput吞吐量即表示每秒完成的請求數(shù)
        Received KB/sec每秒從服務(wù)器端接收到的數(shù)據(jù)大小
        Sent KB/se每秒從客戶端發(fā)送的請求的數(shù)據(jù)大小

        3

        總結(jié)


        看到這里,相信大家已經(jīng)對JMeter這款性能測試工具有了基本的了解,也熟悉了基本操作,當(dāng)然JMeter還有許多其他的功能,比如生成測試報告圖表等,大家盡情探索吧。
        如果文章對你有幫助,別忘了轉(zhuǎn)發(fā)點贊哦~

        本文首發(fā)于:

        https://www.jianshu.com/p/c1f82a773c3c


        推薦閱讀

        聊技術(shù),不止于技術(shù)。

        在這里我會分享技術(shù)文章、管理知識以及個人的思想感悟,歡迎點擊關(guān)注。




        瀏覽 68
        點贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
          
          

            1. 黄色操逼视频免费 | 疯狂欧美大伦交乱 | 久久精品视频在线播放 | 亚洲午夜精品影院 | 办公室三级hd激情 |