那里的所有 pytest 文档都指定这py.test file_name
是运行 pytest 测试用例的标准方式。但是我在 Emacs 中使用左侧窗格中的 Python 脚本和右侧窗格中的 Python 解释器进行开发。
我的工作流程是我对 Python 脚本进行更改CTRL-C C(以便将更新的更改发送到 REPL)并移动到 REPL ( CTRL-O) 以便测试更新的代码。如果我可以对左侧的测试用例进行更改,移动到右侧的 REPL 屏幕并执行更新的测试用例,那就太好了。
有没有办法从 REPL 或脚本中运行 pytest 测试用例,而不是生成 shell 并运行 pytest 命令?
编辑:顺便说一句,我确实尝试过使用main
pytest 中的函数并在脚本中调用它,但出于一些有趣的原因,除非我杀死旧的 REPL 并开始一个新的,否则这些更改不会被采纳。其他 Python 脚本不会发生这种情况,所以我确信这与 pytest 有关。这是代码:
def test_add():
assert myadd(1, 2) == 3
if __name__ == '__main__':
pytest.main()