当前位置: 首页 > 面试题库 >

如何限制单元测试的最大运行时间?

陈浩
2023-03-14
问题内容

我目前正在运行一些单元测试,这些单元测试可能要花很长时间才能失败或无限期地运行。在成功的测试运行中,它们将始终在一定时间内完成。

是否可以创建pytest单元测试,如果在一定时间内未完成,该测试将失败?


问题答案:

您可以安装pytest-timeout插件,然后用几秒钟的超时标记您的测试功能。

@pytest.mark.timeout(300)
def test_foo():
   pass

在https://pypi.python.org/pypi/pytest-
timeout
查看插件下载和使用说明



 类似资料:
  • 我通过以下命令克隆了Guava的存储库: 不幸的是,我收到了以下错误(在这里可以查看整个输出)。 如何运行Guava的单元测试?

  • Rspec尝试在运行任何规范文件或整个测试套件的末尾运行测试::单元测试。它仍然可以,因为我没有任何测试单元测试文件,但它尝试将给定给rspec的命令行选项传递给test::unit,结果是 如何阻止rspec运行测试单元测试? 我正在使用的测试gem版本是

  • 我使用PyCharm来运行一个相当大的测试套件(1800个快速测试)。最近修改了一个测试,我意识到我的测试不会出错。当我单独运行这些测试时,确实会中断,但是如果我运行整个测试套件,它们总是会通过。这是由于一些以前的同事对类的这种不正确的嘲笑: 我现在需要检查整个测试套件中模拟的使用情况,但是我想单独运行每个测试,看看哪些测试没有通过(我将这些测试标记为高优先级)。我怎么能从控制台或Py魅力中做到这

  • 我有使用vue cli 3的vue应用程序。在安装过程中,我选择了jest作为测试框架。要运行我的单元测试,我在package.json中有一个脚本: 要运行这个我写在vs代码终端: 这将运行所有符合package.json文件jest配置部分中设置的规范的测试。 我的问题是如何只运行一个测试。我需要运行特定的命令吗?或者是否有一个vscode扩展将与此设置一起工作。

  • 单元测试,对独立的代码功能片段,由编写代码的团队进行测试,也是一种编码,而非与之不同的一些事情。设计代码的一部分就是设计它该如何被测试。你应该写一个测试计划,即使它只是一句话。有时候测试很简单:“这个按钮看起来好吗?”,有时候它很复杂:“这个匹配算法可以精确地返回正确的匹配结果?”。 无论任何可能的时候,使用断言检查以及测试驱动。这不仅能尽早发现 bug,而且在之后也很有用,让你在其他方面担心的谜

  • 我有以下测试: 这是好的,它可以运行,但是我想知道有没有一种方法可以将它作为单元测试而不是集成测试运行,并且仍然使用@mockbean@autowired。还是我错过了什么? 我试着只保留@ExtendWith(SpringExtension.class),但我得到一个关于找不到BookServiceImpl bean的异常。 我知道如何使用MockitoExtension和@mock、@inje