【发布时间】:2021-01-12 17:26:38
【问题描述】:
在虚拟环境中我安装了 locust。 我想创建可分发的包,以便任何用户都可以运行负载测试。 我使用了pyinstaller。 exe文件已创建,但当我运行它时没有任何反应。
from locust import HttpUser, TaskSet, task
import orjson as json
def create_post(self):
paramsDict = {}
paramsDict = json.loads('{ ...myjson.. }')
params = json.dumps(paramsDict) #for orjson
headers = {'content-type': 'application/json','Accept-Encoding':'gzip'}
response = self.client.post("/",data= params, headers=headers, name = "Post query")
print(f'response -> {response}')
class WebsiteUser(HttpUser):
tasks = [create_post]
正如 Axel 指出的那样,我使用 locust 作为图书馆。 我用 pyinstaller 构建并测试运行只是网页没有显示
I build with pyinstaller but web did not appear `response -> <Response [200]>
Traceback (most recent call last):
File "gevent\pywsgi.py", line 999, in handle_one_response
File "gevent\pywsgi.py", line 945, in run_application
File "flask\app.py", line 2464, in __call__
File "flask\app.py", line 2450, in wsgi_app
File "flask\app.py", line 1867, in handle_exception
File "flask\_compat.py", line 39, in reraise
File "flask\app.py", line 2447, in wsgi_app
File "flask\app.py", line 1952, in full_dispatch_request
File "flask\app.py", line 1821, in handle_user_exception
File "flask\_compat.py", line 39, in reraise
File "flask\app.py", line 1950, in full_dispatch_request
File "flask\app.py", line 1936, in dispatch_request
File "locust\web.py", line 419, in wrapper
File "locust\web.py", line 132, in index
File "flask\templating.py", line 138, in render_template
File "jinja2\environment.py", line 930, in get_or_select_template
File "jinja2\environment.py", line 883, in get_template
File "jinja2\environment.py", line 857, in _load_template
File "jinja2\loaders.py", line 115, in load
File "flask\templating.py", line 60, in get_source
File "flask\templating.py", line 89, in _get_source_fast
jinja2.exceptions.TemplateNotFound: index.html
2021-01-11T11:29:52Z {'REMOTE_ADDR': '127.0.0.1', 'REMOTE_PORT': '61083', 'HTTP_HOST': 'localhost:8089', (hidden keys: 31)} failed with TemplateNot
模板需要包含在构建中。 在我添加到数据部分的规范文件中,以及带有 java 脚本和 css 的静态文件中
datas=[('<path>\\Lib\\site-packages\\locust\\templates', 'locust\\templates'),('<path>\\Lib\\site-packages\\locust\\static', 'locust\\static')],
使用 Inno Setup,我还将这些添加到文件夹中,与可执行文件位于同一文件夹中。 并显示网页。
【问题讨论】:
标签: locust