更好的python单元测试集成?

更好的python单元测试集成?,python,emacs,elpy,Python,Emacs,Elpy,我正在使用GNU Emacs 24.5.1处理Python代码。我通常只想运行一个单元测试。我可以这样做,例如,通过运行: test=spi.test_views.IndexViewTest.generate_select2_data_with_embedded_spaces make test 使用M-X编译。如果我能给出一些命令,比如“在点所在的位置运行测试”,并让emacs为我计算出测试的全名,我的生活会更简单。有可能吗 更新:使用以下缓冲区,我想要一些运行M-X compile的命令

我正在使用GNU Emacs 24.5.1处理Python代码。我通常只想运行一个单元测试。我可以这样做,例如,通过运行:

test=spi.test_views.IndexViewTest.generate_select2_data_with_embedded_spaces  make test
使用M-X编译。如果我能给出一些命令,比如“在点所在的位置运行测试”,并让emacs为我计算出测试的全名,我的生活会更简单。有可能吗

更新:使用以下缓冲区,我想要一些运行M-X compile的命令:

test=spi.test_views.IndexViewTest.test_unknown_button make test
其中spi是test_views.py所在目录的名称。好的,从技术上讲,我需要构造测试函数的python路径,但在实践中,它将是

这似乎是有人已经发明的东西,但我在python模式文档中没有看到任何东西

我相信您使用的是“默认”
python
模式,而所谓的(我强烈建议在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)
,这似乎非常接近您在问题中提到的功能

请参见以下屏幕截图中的代码/帮助摘录:


一切皆有可能,您只需编写代码即可。好的,让我们再试一次:您可以编辑您的问题,以显示您在调用测试时所处的缓冲区吗?虽然不是真正离题,但您可能会在emacs.stackexchange.com上得到更好的答案。很酷,elpy正是我想要的。在我的原始帖子中没有说明这些是django测试,所以它们需要使用django测试运行程序运行,而elpy实际上知道如何运行(M-X elpy set test runner)!非常整洁,谢谢!