首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在超时时使测试失败?

如何在超时时使测试失败?
EN

Stack Overflow用户
提问于 2020-07-15 18:10:16
回答 1查看 92关注 0票数 0

当使用--run-time 0h01m arg时,我希望测试失败,但是您会得到标准的:

代码语言:javascript
复制
10:59:36  [2020-07-15 09:59:32,838] jslave-traditional-v2-10-25-234-143/INFO/locust.main: Time limit reached. Stopping Locust.
10:59:36  [2020-07-15 09:59:32,838] jslave-traditional-v2-10-25-234-143/INFO/locust.main: Shutting down (exit code 0), bye.
10:59:36  [2020-07-15 09:59:32,838] jslave-traditional-v2-10-25-234-143/INFO/locust.main: Cleaning up runner...
10:59:36  [2020-07-15 09:59:32,838] jslave-traditional-v2-10-25-234-143/INFO/locust.main: Running teardowns...

或者,当系统接收到SYSTERM信号时,这也会失败,我该怎么做?

编辑:我对目标不是很清楚。当locust正在运行时,无论是超时还是收到停止的sigterm信号,我希望locust首先将状态代码更改为1。

因此,我尝试使用此代码设置一个自定义退出代码,以测试我的代码是否可以正常运行:

代码语言:javascript
复制
from locust import events
@events.quitting.add_listener
def _(environment, **kw):
    environment.process_exit_code = 1

这是堆栈跟踪:

代码语言:javascript
复制
13:52:32  [2020-07-16 12:52:32,747] jslave-traditional-v2-10-25-213-101/ERROR/stderr: import context
13:52:32  [2020-07-16 12:52:32,747] jslave-traditional-v2-10-25-213-101/ERROR/stderr: 
13:52:32  [2020-07-16 12:52:32,747] jslave-traditional-v2-10-25-213-101/ERROR/stderr: File "/var/build/predictive-routing-e2e-dev-2556/tests/locust/context.py", line 7, in <module>
13:52:32  [2020-07-16 12:52:32,747] jslave-traditional-v2-10-25-213-101/ERROR/stderr: 
13:52:32  [2020-07-16 12:52:32,747] jslave-traditional-v2-10-25-213-101/ERROR/stderr: import util
13:52:32  [2020-07-16 12:52:32,747] jslave-traditional-v2-10-25-213-101/ERROR/stderr: 
13:52:32  [2020-07-16 12:52:32,747] jslave-traditional-v2-10-25-213-101/ERROR/stderr: File "/var/build/predictive-routing-e2e-dev-2556/tests/locust/util.py", line 149, in <module>
13:52:32  [2020-07-16 12:52:32,747] jslave-traditional-v2-10-25-213-101/ERROR/stderr: 
13:52:32  [2020-07-16 12:52:32,747] jslave-traditional-v2-10-25-213-101/ERROR/stderr: @events.quitting.add_listener
13:52:32  [2020-07-16 12:52:32,747] jslave-traditional-v2-10-25-213-101/ERROR/stderr: 
13:52:32  [2020-07-16 12:52:32,747] jslave-traditional-v2-10-25-213-101/ERROR/stderr: AttributeError
13:52:32  [2020-07-16 12:52:32,748] jslave-traditional-v2-10-25-213-101/ERROR/stderr: :
13:52:32  [2020-07-16 12:52:32,748] jslave-traditional-v2-10-25-213-101/ERROR/stderr: 'EventHook' object has no attribute 'add_listener'

如果这确实起作用,则目标是在locust收到关闭sigterm的情况下将环境退出代码设置为1。

EN

回答 1

Stack Overflow用户

发布于 2020-07-16 05:40:35

我不确定您到底需要什么,但是您可以通过在任务中设置self.environment.process_exit_code来覆盖Locust的退出代码。

有关更多信息,请访问:https://docs.locust.io/en/stable/running-locust-without-web-ui.html?highlight=Exit#controlling-the-exit-code-of-the-locust-process

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62912531

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档