DejaGnu

The GNU Testing Framework

Rob Savoye

Free Software Foundation

Table of Contents
Abstract
Overview
Getting DejaGnu up and running
Running Tests
Customizing DejaGnu
Extending DejaGnu
Unit Testing
Reference
Unit Testing API

Abstract

This document describes the functionality of DejaGnu, the testing framework of the GNU project. DejaGnu is written in Expect, which uses Tcl as a command language. Expect acts as a very programmable shell. As with other Unix command shells, you can run any program, but once the program is started, your test script has programmable control over its input and output. This does not just apply to the programs under test; expect can also run any auxiliary program, such as diff or sh, with full control over its input and output.

DejaGnu itself is merely a framework for the creation of testsuites. Testsuites are distributed with each application.