当使用Emacs在elisp中运行测试时,如何评估代码?
我正在写一些小拼图来学习Emacs Lisp 但是,我当前的工作流程太单调乏味了:当使用Emacs在elisp中运行测试时,如何评估代码?,emacs,elisp,Emacs,Elisp,我正在写一些小拼图来学习Emacs Lisp 但是,我当前的工作流程太单调乏味了: 更改代码 eval区域或eval缓冲区code 改变测试 eval区域或eval缓冲区测试代码 M-x ert,然后按enter键运行测试 如何设置Emacs或测试,这样我就可以“运行测试”,Emacs将为我评估所有代码?您可能不应该在Emacs会话中运行测试。而是在新的Emacs会话中运行测试: $ emacs -Q -b -l my-source-file.el -l my-test-file.el -f e
eval区域
或eval缓冲区
codeeval区域
或eval缓冲区
测试代码M-x ert
,然后按enter键运行测试如何设置Emacs或测试,这样我就可以“运行测试”,Emacs将为我评估所有代码?您可能不应该在Emacs会话中运行测试。而是在新的Emacs会话中运行测试:
$ emacs -Q -b -l my-source-file.el -l my-test-file.el -f ert-run-tests-batch-and-exit
您可以从
M-x compile
运行此程序,谢谢,这正是我所需要的。但是我必须用-batch
替换-b
,你认为测试本身应该需要测试中的代码吗?这似乎是我用其他语言做事的方式。@jplindstrom我想是的,我通常有一个相应的require
。它可以让您干净地对测试代码进行字节编译,从而帮助您发现错误(例如,拼写错误的函数或变量等),尤其是(无耻的插件:)