ERT: Emacs Lisp Regression Testing
Copyright © 2008, 2010–2025 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
Invariant Sections, with the Front-Cover Texts being “A GNU Manual,”
and with the Back-Cover Texts as in (a) below. A copy of the license
is included in the section entitled “GNU Free Documentation License”.
(a) The FSF’s Back-Cover Text is: “You have the freedom to copy and
modify this GNU manual.”
ERT is a tool for automated testing in Emacs Lisp. Its main features
are facilities for defining and running tests, reporting results, and
debugging test failures interactively. Tests are written in Emacs Lisp,
just like the code under test, making it easy to write expressive and
concise test cases.
ERT has unique features that take advantage of the dynamic and
interactive nature of Emacs. It is unopinionated about when or how
tests are written: you can use it to verify newly written code,
reproduce known bugs, prevent regressions, or explore the behavior of
complex systems. It can be used for both unit tests and larger
integration tests.