如何向 Python 中的 locustfile 提供测试数据以进行负载测试
How to provide test data to a locustfile in Python for load testing
我已经使用 Flask 构建了一个 API 并且想使用 Locust 进行负载测试。
任何人都可以帮助我如何创建它并进行负载测试
在得到正确的结果后,我想出了在负载测试时如何将输入传递给烧瓶的方法API。
文本分类负载测试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__()
我已经使用 Flask 构建了一个 API 并且想使用 Locust 进行负载测试。 任何人都可以帮助我如何创建它并进行负载测试
在得到正确的结果后,我想出了在负载测试时如何将输入传递给烧瓶的方法API。
文本分类负载测试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__()