如何使用 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")
示例代码:
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")