bri*_*fox 5 python unit-testing pytest
我最近开始玩pytest,我使用pytest.main()来运行测试.然而,似乎pytest缓存了测试.对模块或测试所做的任何更改都将被忽略.我无法从命令行运行pytest所以pytest.main()是我唯一的选择,这是因为在我的ipad上编写python.
我已经广泛搜索了这个,并且能够找到一个类似的问题,建议从命令行运行pytest.任何帮助将不胜感激.
谢谢,
Pytest 不缓存任何内容。每个 Python 解释器实例只能读取一次模块(文件)。
有一个reload内置的,但它几乎从不做你希望它做的事情。
所以如果你正在跑步
import pytest
...
while True:
import my_nifty_app
my_nifty_app.be_nifty()
pytest.main()
Run Code Online (Sandbox Code Playgroud)
my_nifty_app.py即使它在磁盘上发生更改,也会被读取一次且仅一次。你真正需要的是类似的东西
exit_code = pytest.main()
sys.exit(exit_code)
Run Code Online (Sandbox Code Playgroud)
这将结束解释器的实例,这是确保重新读取源文件的唯一方法。
| 归档时间: |
|
| 查看次数: |
927 次 |
| 最近记录: |