簡體   English   中英

K6 - docker 容器中的並行測試

[英]K6 - parallel test in docker container

我有一個關於 K6 並行測試的概念性問題。 我想並行運行多個測試腳本。 如果我選擇使用 docker compose 文件運行它們,如下所示,我們可以說它是真正意義上的並行嗎? 據我了解,docker compose 中的每個 k6 容器都是一個具有自己處理器的獨立單元? 那是對的嗎? 那么這可以稱為並行測試嗎?

version: '3'
services:
  k6_test:
    image: loadimpact/k6
    container_name: test_k6
    volumes:
       - ./:/specs
    command: run /tests/test_spec.js
    ports:
       - "6565:6565"

  k6_test2:
    image: loadimpact/k6
    container_name: test2_k6
    volumes:
       - ./:/specs
    command: run /tests/test2_spec.js
    ports:
       - "6566:6566"

您將擁有兩個獨立的容器,並且測試將能夠並行運行。 他們將使用正常的 Linux 內核調度機制,不一定有“自己的處理器”; 這種設置可以正常工作,即使您只有一個物理內核,您也可以並行執行。

話雖如此,一種被稱為“並行測試”的更典型的方法是讓一個測試運行器能夠自己並行運行多個測試。 例如,許多單元測試系統都有一個“並行測試”選項,可以在多個線程上運行測試。 由於 k6 更像是一個負載測試工具,它能夠啟動多個並發 HTTP 請求,而無需您展示的那種手動設置; k6 文檔中的負載測試壓力測試描述了一些典型設置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM