介面測試 併發處理

2022-08-24 16:48:13 字數 1968 閱讀 9665

1 多執行緒執行

importthreading

from datetime import *

deftest():

print(datetime.now())

defthd():

theaders =

for i in range(10):

t = threading.thread(target=test)

for t intheaders:

t.start()

if __name__ == '__main__':

thd()

importthreading

from datetime import *

deftest():

print(datetime.now())

deflooptest():

for i in range(50):

test()

defthd():

threads=

for i in range(100):

t = threading.thread(target=looptest)

for t inthreads:

t.start()

if __name__ == '__main__':

thd()

2 守護執行緒

上面建立的執行緒是main()執行緒的子執行緒,即先啟動主線程main(),然後執行thd自動子執行緒。

守護執行緒則是在主線程執行完後,所有的子執行緒都被關閉(無論子執行緒是否執行完成)。預設是沒有守護執行緒,主線程執行完畢之後,會等待子執行緒全部執行完畢,才會結束程式。如果當子執行緒死迴圈,程式將不會關閉,因此在測試時可以設定守護執行緒解決這個問題。

importthreading

from datetime import *

deftest():

print(datetime.now())

deflooptest():

for i in range(50):

test()

defthd():

threads=

for i in range(1):

t = threading.thread(target=looptest)

t.setdaemon(true)

for t inthreads:

t.start()

if __name__ == '__main__':

thd()

3 阻塞執行緒

還可以通過子執行緒join()方法阻塞執行緒,讓主線程等待子執行緒完成之後再往下執行,等主線程執行完畢後在關閉所有子執行緒。

並且可以通過join()的timeout引數來控制,如果超過時間子執行緒未完成,則主線程繼續執行,執行完成後關閉子執行緒。

importthreading

from datetime import *

deftest():

print(datetime.now())

deflooptest():

for i in range(50):

test()

defthd():

threads=

for i in range(1):

t = threading.thread(target=looptest)

t.setdaemon(true)

for t inthreads:

t.start()

for t inthreads:

t.join(1)

if __name__ == '__main__':

thd()

阻塞執行緒的主要意義在於控制子執行緒與主線程的執行順序。

Jmeter介面併發測試

配置流程大致分為以下幾步 1.新增執行緒組 2.新增http請求和http請求頭管理器 3.新增定時器 4.新增 5.執行 6.結果分析 一 新增執行緒組 執行緒組配置如下 執行緒組引數詳解 取自部落格 二 新增http請求和http請求頭管理器 http請求配置如下 需要注意的是 如果是post請...

Linux 介面併發壓力測試

webbench安裝 wget wget tar zxvf webbench 1.5.tar.gz make sudo make install 執行 webbench c 併發數 t 併發時間 webbench c 300 t 10 ab命令原理 apache的ab命令模擬多執行緒併發請求,測試伺...

Jmeter 實現介面併發測試

執行環境 win 7 1.執行啟動jmeter 2.新增測試計畫 3.新增 執行緒組 以下引數的意思是間隔0秒併發產生9000個執行緒 執行緒組主要包含三個引數 執行緒數 準備時間 ramp up period in seconds 迴圈次數。執行緒數 虛擬使用者數,乙個虛擬使用者占用乙個程序或執行...