summaryrefslogtreecommitdiff
path: root/README
blob: 623af0992c31d643610bccd36399e74b67bbf261 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
iltest is a test framework for InterLeaved TESTing. It was originally
written for X.Org X Server testing.

The principle: A process (the "testee") need to be tested by other processes
(the "tester(s)").  The testers report on whether the tests were successful.

A test has three stages:
- pre: preparation stage
- run: actual testing stage
- post: cleanup stage

In iltest, the order of calls is thus:

 Time           Testee          Tester 
  |              pre()
  |                              pre()
  |              run()
  |                              run()
  |              post()
  V                              post()

Thus, in the case of the X server testing, usually this happens:
    testee.pre:  back up various files, ensure system integrity, etc.
    tester.pre:  set up configuration files, add virtual devices, etc.
    testee.run:  run the X server
    tester.run:  run tests
    testee.post: restore files
    tester.post: gather test results

iltest itself does not do much. It simply provides the interfaces for the
test suites (which contain most of the knowledge) and a few utility
functions.