gpt4 book ai didi

python - 如何为 python unittest 指定测试超时?

转载 作者:IT老高 更新时间:2023-10-28 21:01:54 25 4
gpt4 key购买 nike

我正在使用 python 框架 unittest。是否可以通过框架的能力指定测试超时?如果不是,是否可以为所有测试优雅地指定一个 timeout 并为一些单独的测试为每个测试指定一个私有(private)值?
我想为所有测试定义一个全局超时(默认情况下他们会使用它),并为一些可能需要很长时间的测试定义一个超时。

最佳答案

据我所知unittest不包含对测试超时的任何支持。

你可以试试timeout-decorator来自 PyPI 的库。将装饰器应用于单个测试以使它们在耗时过长时终止:

import timeout_decorator

class TestCaseWithTimeouts(unittest.TestCase):

# ... whatever ...

@timeout_decorator.timeout(LOCAL_TIMEOUT)
def test_that_can_take_too_long(self):
sleep(float('inf'))

# ... whatever else ...

要创建全局超时,可以替换调用

unittest.main()

timeout_decorator.timeout(GLOBAL_TIMEOUT)(unittest.main)()

关于python - 如何为 python unittest 指定测试超时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34743448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com