开发和文档编写 Locust
想要为 Locust 做出贡献吗?太好了!这里列出了 开放的 bug 和功能请求。
安装 Locust 用于开发
-
在 GitHub 上 Fork Locust 仓库,然后执行:
# 克隆仓库:
$ git clone git://github.com/<YourName>/locust.git
# 安装 poetry 构建系统,查看 https://python-poetry.org/docs/#installation
# 安装所需的 poetry 插件:
$ poetry self add "poethepoet[poetry_plugin]"
$ poetry self add "poetry-dynamic-versioning[plugin]"
# 执行 Locust 包的可编辑安装,同时安装开发和测试包:
$ poetry install --with dev,test
现在 poetry run locust
命令将运行您的代码(无需在每次修改后重新安装)。
为了贡献您的修改,将更改推送到您的仓库分支,然后 在 GitHub 上创建一个 PR。
如果您安装了 pre-commit,提交时将自动执行代码检查和格式修复。
在打开拉取请求之前,请确保所有测试通过。如果您正在添加功能,确保它在 docs/*.rst
中有文档。
如果您赶时间或无法访问开发环境,您可以简单地使用 GitHub 的云开发环境 Codespaces。在您的 Fork 页面上,只需点击 “Code”,然后点击 “Create codespace on <branch name>”,即可开始编写和测试代码。
调试
查看: 在调试器中运行测试 。
格式化和 linting
Locust 使用 ruff 进行格式化和 lint 检查。如果代码不符合要求,构建将失败。如果您使用 vscode,它将在每次保存文件时自动运行,但如果您的编辑器不支持,您可以手动运行:
ruff --fix <file_or_folder_to_be_formatted>
ruff format <file_or_folder_to_be_formatted>
您可以使用 tox 验证整个项目:
tox -e ruff
ruff: install_deps> python -I -m pip install ruff==0.1.13
ruff: commands[0]> ruff check .
ruff: commands[1]> ruff format --check
104 files already formatted
ruff: OK (1.41=setup[1.39]+cmd[0.01,0.01] seconds)
congratulations :) (1.47 seconds)
构建文档
文档源文件位于 docs/
目录中。要构建文档,首先需要安装 Locust 用于开发环境,然后
-
安装文档相关的依赖:
poetry install --with docs
-
在本地构建文档:
make build_docs
通过打开 docs/_build/index.html
来查看生成的文档。
修改 Locust 的 Web UI
Web UI 使用 React 和 TypeScript 构建。
设置
开发
要在运行 Locust 实例时进行开发,运行 yarn watch
。这会将静态文件输出到 dist
目录,Vite 会自动检测文件更改并重新构建。只需刷新页面即可查看更改。
在某些情况下(通常是样式开发),您可能希望在不运行 Locust 实例的情况下开发前端。运行 yarn dev
将启动 Vite 开发服务器,并允许查看您的更改。
要编译 Web UI,运行:
yarn build
前端也可以使用 make
构建:
make frontend_build