如何在Python中创建用于负载测试的locastfile

2024-04-19 08:38:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经用flask构建了一个API,并想用locust进行负载测试。 有人能帮我创建它并进行负载测试吗


Tags: apiflasklocust
1条回答
网友
1楼 · 发布于 2024-04-19 08:38:10

在得到正确的结果之后,我提出了在负载测试时如何将输入传递到flaskapi的方法。你知道吗

文本分类API的负载测试

from locust import HttpLocust, TaskSet, task
import os
import random
TEST_DATA_PATH = 'load_test_data.txt' 

def load_test_sentences():  
   sent = []  
   with open(TEST_DATA_PATH, 'rb') as fp:
     for row in fp:  
       row = row.strip()   
       sent.append(row)  
   return sent

class UserBehavior(TaskSet):
    def on_start(self):
        self.sent=load_test_sentences()

    @task(1)
    def about(self):
        for ut in self.sent:
            self.client.get("/entity-extractor/location?q={}".format(ut.decode("utf-8")),name='Text Classification') 

class MyLocust(HttpLocust):
    task_set = UserBehavior
    host = "http://0.0.0.0:8000"
    min_wait = 5000
    max_wait = 15000
    def __init__(self):
        print('loaded %s sentences' %len(load_test_sentences()))
        super(MyLocust, self).__init__()

相关问题 更多 >