【发布时间】:2021-01-14 12:07:11
【问题描述】:
我们有一个要求,我们需要发送一个发布请求,然后为同一端点发送一个删除请求(REST API)。
需要为每个发布请求、每次迭代中的每个用户生成一个唯一的 id。 生成的唯一字符串放在任务类(SequentialTaskSet)的 on_start() 方法中。
问题是,它运行一次迭代,但为每个用户的连续迭代生成相同的 id。 要在每次迭代中为每个用户获取唯一 ID,在任务本身中生成唯一字符串是可行的,但这里的问题是,我无法将相同的 ID 传递给需要发送删除请求的下一个任务。
这就是现在的代码:
class StudentClass(SequentialTaskSet):
rndString = None
def on_start(self):
self.rndString = str(uuid.uuid4())
@task
def postRequest(self):
endpoint = "/students"
headers = {
'Authorization': 'Bearer token',
'content-type': 'application/json', 'accept': 'application/json'
}
data = {
"Id": f'std-{self.rndString}',
}
with self.client.post(endpoint, name="Post request", headers=headers, data=json.dumps(data),
catch_response=True) as response:
........
感谢任何帮助实现这一目标。
【问题讨论】:
标签: locust