如何使用 doctest 测试异步函数?

How do I test async functions with doctest?

示例代码:

async def test():
  """
  >>> await test()
  hello world
  """
  print("hello world")

尝试 运行 这与 doctests 结果 SyntaxError: 'await' outside function

Doctest 运行s 任何函数之外的代码中的代码。 您不能在异步函数之外使用 await 表达式。

为了 运行 异步函数,您可以像这样使用 asyncio.run()

import asyncio

async def test():
  """
  >>> asyncio.run(test())
  hello world
  """
  print("hello world")