<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          K6性能測試工具的使用入門

          共 1639字,需瀏覽 4分鐘

           ·

          2020-07-28 16:31

          """

          之前偶然聽到k6這款便捷的性能測試工具,好奇之下就用來玩了一下,結(jié)果真的不懶,做一些單接口的壓測完全夠用了,

          所以寫下這個(gè)介紹文檔,第一是自己做一個(gè)筆記,第二是為有需要的朋友簡單介紹一下,方便快速上手。

          """

          簡介

          k6是高性能的負(fù)載測試工具,也是一種高性能工具,旨在在預(yù)生產(chǎn)和QA環(huán)境中以高負(fù)載運(yùn)行測試,可使用JavaScript編寫腳本。它是一個(gè)以開發(fā)人員為中心(當(dāng)然,測試人員亦可以使用,因?yàn)檎娴暮芊奖悖赓M(fèi)和開源的負(fù)載測試工具,旨在使性能測試具有生產(chǎn)力和令人愉悅的體驗(yàn),可最大程度地減少系統(tǒng)資源的消耗。官網(wǎng):https://k6.io/

          安裝與運(yùn)行

          以window系統(tǒng)為例,到官網(wǎng)下載最新版本,根據(jù)安裝提示默認(rèn)安裝即可。安裝完成后在命令窗口輸入:K6,檢測是否安裝成功。出現(xiàn)如下圖就是成功了:

          執(zhí)行腳本的只需要在輸入:k6 run +腳本名。如下圖:

          執(zhí)行完成后會在界面給出測試結(jié)果:

          將測試結(jié)果保存到指定的位置:

          HTTP請求

          k6可以使用JavaScript進(jìn)行快速的編寫腳本,對有前端經(jīng)驗(yàn)的同學(xué)特別友好,我在實(shí)際的使用過程中也是使用的JavaScript進(jìn)行編寫。下面簡單舉兩個(gè)常見請求類型的例子。

          GET請求

          如圖所示,k6的請求方式和其他工具的接口請求方式并無太大的區(qū)別,只需要導(dǎo)入 ?import http from 'k6/http';; ?按照js的語法依次傳入U(xiǎn)RL,header即可。

          POST請求

          post請求如下圖所示,依次傳入U(xiǎn)RL,傳參,header即可。

          斷言設(shè)置

          K6的斷言個(gè)人認(rèn)為是比較簡潔的,導(dǎo)入check()后即可,而且一個(gè)check()可以添加多個(gè)斷言。

          設(shè)置并發(fā)

          k6中有兩種設(shè)置并發(fā)、運(yùn)行時(shí)間的方法。

          第一種是在命令行內(nèi):

          第二種是在腳本內(nèi):

          K6還有支持更多的條件設(shè)置,請閱讀官網(wǎng)文檔。

          cookie設(shè)置

          k6有多種的cookie的寫法,如圖是能夠快速入手的寫法:

          測試結(jié)果

          名稱

          描述

          vus

          當(dāng)前的虛擬用戶數(shù)

          vus_max

          虛擬用戶的最大數(shù)量(已預(yù)先分配VU資源,以確保在擴(kuò)大負(fù)載級別時(shí)性能不會受到影響)

          iterations

          測試中的VU執(zhí)行JS腳本(default函數(shù))的總次數(shù)。

          iteration_duration

          完成默認(rèn)/主函數(shù)的完整迭代所花費(fèi)的時(shí)間。

          dropped_iterations

          在k6 v0.27.0中引入,由于缺少VU(對于到達(dá)率執(zhí)行程序)或缺少時(shí)間(由于基于迭代的執(zhí)行程序中的maxDuration過期)而無法啟動的迭代次數(shù)。

          data_received

          接收到的數(shù)據(jù)量

          data_sent

          發(fā)送的數(shù)據(jù)量

          checks

          斷言成功率

          其中iteration_duration中,我們可以看到平均消耗時(shí)間,最大最小,以及百分之90請求所用時(shí)間等,這點(diǎn)與jmeter相識。

          其他操作

          在K6執(zhí)行測試任務(wù)時(shí),我們可以再次打開一個(gè)新的命令窗口來控制測試的暫停測試等操作:

          • k6 pause?-暫停測試執(zhí)行,暫停所有VU

          • k6 resume?-取消暫停k6,導(dǎo)致所有活動的VU恢復(fù)執(zhí)行

          • k6 scale?-更改活動VU的數(shù)量(或允許的最大VU數(shù)量)

          • k6 stats?-報(bào)告當(dāng)前已收集的統(tǒng)計(jì)信息

          • k6 status?-報(bào)告測試的一般狀態(tài)



          Selenium Firefox驅(qū)動程序:使用Firefox瀏覽器自動進(jìn)行測試
          WebDriverIO教程:處理Selenium中的警報(bào)和覆蓋
          TeamCity VS Jenkins:選擇正確的CI / CD工具
          如何在Selenium WebDriver中處理Web表?
          Python中的正則表達(dá)式(二)
          Python中的正則表達(dá)式和示例
          Python中的文件處理


          一碼不掃,
          可以掃天下?添加小編進(jìn)自學(xué)群

          獲取更多學(xué)習(xí)資源






          瀏覽 179
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  免费又黄又爽又色的视频 | 91狠狠综合久久久久久 | 欧美爆乳一区二区 | 99亚洲视频 | 久操AV在线播放 |