最近我从旧的 locust 版本(0.14.2)切换到 1.3.1。以前,我可以使用命令 WebsiteUser().run() 在调试模式下运行,它会在所有断点处停止。
当我尝试使用相同的命令运行新版本时,出现下一个错误:
文件“/home/user/PycharmProjects/my_test/venv/lib/python3.7/site-packages/locust/user/users.py”,第 210 行,在init super() 中。init (*args, **kwargs) TypeError: init () 缺少 1 个必需的位置参数:'environment'
我确信可以像以前一样调试新版本,但是我做错了什么?
locustfile.py:
class UserBehaviour(MyTask):
@task
def task_one(self):
self.action_one()
class WebsiteUser(HttpUser):
conf = Config()
host = conf.host
tasks = [UserBehaviour]
wait_time = between(0.5, 1.5)
if __name__ == "__main__":
WebsiteUser().run()
Run Code Online (Sandbox Code Playgroud)
my_task.py:
class MyTask(BaseTaskSet):
def action_one(self):
self.client.get('dummy_path')
Run Code Online (Sandbox Code Playgroud)
小智 6
Locust 1.0+ 对使用 Locust 作为库提供了更强大的支持。它在使用 Locust 时提供了更多的灵活性和定制化,但有许多重大更改来实现这一点(1.0 指定的一个原因)。您遇到的是 Locust 现在需要所有相关类的环境Users。你可能想要做的是:
if __name__ == "__main__":
from locust.env import Environment
my_env = Environment(user_classes=[WebsiteUser])
WebsiteUser(my_env).run()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1218 次 |
| 最近记录: |