更好的 python 单元测试集成?
Better python unittest integration?
我正在使用 GNU Emacs 24.5.1 处理 Python 代码。我经常想 运行 只是一个单元测试。例如,我可以通过 运行ning:
test=spi.test_views.IndexViewTest.generate_select2_data_with_embedded_spaces make test
用 M-X 编译。如果我可以给出一些命令,如“运行 点所在的测试”,并让 emacs 为我找出测试的全名,我的生活会更简单。可以吗?
更新:使用以下缓冲区,我想要一些 运行s M-X 编译的命令:
test=spi.test_views.IndexViewTest.test_unknown_button make test
其中 spi 是 test_views.py 所在目录的名称。嗯,从技术上讲,我需要构建 python 测试函数的路径,但实际上,它将是 < directory.file.class.function>.
这似乎已经有人发明了,但我在 python 模式文档中没有看到任何内容。
我相信您使用“默认”python
模式,而 so-called elpy
mode(我强烈建议在 Emacs 中进行 Python 开发时尝试一下) 似乎提供了您正在寻找的内容:
C-c C-t (elpy-test)
Start a test run. This uses the currently configured test runner to discover
and run tests. If point is inside a test case, the test runner will run exactly
that test case. Otherwise, or if a prefix argument is given, it will run all tests.
额外的细节
elpy-test
函数内部依赖于函数 (elpy-test-at-point)
,它看起来与您在问题中提到的功能非常接近。
参见例如以下屏幕截图中的 code/help 摘录:
我正在使用 GNU Emacs 24.5.1 处理 Python 代码。我经常想 运行 只是一个单元测试。例如,我可以通过 运行ning:
test=spi.test_views.IndexViewTest.generate_select2_data_with_embedded_spaces make test
用 M-X 编译。如果我可以给出一些命令,如“运行 点所在的测试”,并让 emacs 为我找出测试的全名,我的生活会更简单。可以吗?
更新:使用以下缓冲区,我想要一些 运行s M-X 编译的命令:
test=spi.test_views.IndexViewTest.test_unknown_button make test
其中 spi 是 test_views.py 所在目录的名称。嗯,从技术上讲,我需要构建 python 测试函数的路径,但实际上,它将是 < directory.file.class.function>.
这似乎已经有人发明了,但我在 python 模式文档中没有看到任何内容。
我相信您使用“默认”python
模式,而 so-called elpy
mode(我强烈建议在 Emacs 中进行 Python 开发时尝试一下) 似乎提供了您正在寻找的内容:
C-c C-t (elpy-test) Start a test run. This uses the currently configured test runner to discover and run tests. If point is inside a test case, the test runner will run exactly that test case. Otherwise, or if a prefix argument is given, it will run all tests.
额外的细节
elpy-test
函数内部依赖于函数 (elpy-test-at-point)
,它看起来与您在问题中提到的功能非常接近。
参见例如以下屏幕截图中的 code/help 摘录: