A Test Framework for Common Lisp in the style of JUnit, designed and implemented with simplicity of use in mind.
Common Lisp
Latest commit 9608505 Jan 9, 2016 Thomas M. Hermann Merge branch 'release/Version-1.0.0'
Permalink
Failed to load latest commit information.
extensions
internal-test
.gitignore
README.md
lisp-unit.asd
lisp-unit.lisp

README.md

lisp-unit

lisp-unit is a Common Lisp library that supports unit testing. It is an extension of the library written by Chris Riesbeck. There is a long history of testing packages in Lisp, usually called "regression" testers. More recent packages in Lisp and other languages have been inspired by JUnit for Java.

Documentation is located on the project wiki.

Features

  • Written in portable Common Lisp
  • Loadable as a single file
  • Loadable with ASDF or Quicklisp
  • Simple to define and run tests
  • Redfine functions and macros without reloading tests
  • Test return values, printed output, macro expansions, and conditions
  • Fined grained control over the testing output
  • Store all test results in a database object that can be examined
  • Group tests by package for modularity
  • Group tests using tags
  • Signal test completion and return results with the condition.

Extensions

How to use lisp-unit

The core definitions of lisp-unit may be used by loading the single file 'lisp-unit.lisp'. To use the extensions, lisp-unit must be loaded using either Quicklisp or ASDF.

  1. Load (or compile and load) as a single file : (load "lisp-unit").
  2. Load using Quicklisp : (ql:quickload :lisp-unit).
  3. Load using ASDF : (asdf:load-system :lisp-unit).

Development Plan

  • Version 1.1.0 : Summarize test from multiple packages
  • Version 1.2.0 : Improve integration with IDE (mainly SLIME)

Acknowledgments

Contributions to lisp-unit are noted in the wiki. Please let me know if any contributions have not been acknowledged.