blob: 42eb73d516d9dd813a80c9313ed6d0f0a5dbf64b [file] [log] [blame]
Eric Li0a993912011-05-17 12:56:25 -07001= Autotest: Fully automated tests under the linux platform =
2
3Autotest is a framework for fully automated testing. It is designed primarily to
4test the Linux kernel, though it is useful for many other functions such as
5qualifying new hardware. It's an open-source project under the GPL and is used
6and developed by a number of organizations, including Google, IBM, Red Hat, and
7many others.
8
9Autotest is composed of a number of modules that will help you to do stand alone
10tests or setup a fully automated test grid, depending on what you are up to.
11A non extensive list of modules is:
12
13* Autotest client: The engine that executes the tests (dir client). Each
14autotest test is a a directory inside (client/tests) and it is represented
15by a python class that implements a minimum number of methods. The client
16is what you need if you are a single developer trying out autotest and executing
17some tests. Autotest client executes ''client side control files'', which are
18regular python programs, and leverage the API of the client.
19
20* Autotest server: A program that copies the client to remote machines and
21controls their execution. Autotest server executes ''server side control files'',
22which are also regular python programs, but leverage a higher level API, since
23the autotest server can control test execution in multiple machines. If you
24want to perform tests slightly more complex involving more than one machine you
25might want the autotest server
26
27* Autotest database: For test grids, we need a way to store test results, and
28that is the purpose of the database component. This DB is used by the autotest
29scheduler and the frontends to store and visualize test results.
30
31* Autotest scheduler: For test grids, we need an utility that can schedule and
32trigger job execution in test machines, the autotest scheduler is that utility.
33
34* Autotest web frontend: For test grids, A web app, whose backend is written in
35django (http://www.djangoproject.com/) and UI written in gwt
36(http://code.google.com/webtoolkit/), lets users to trigger jobs and visualize
37test results
38
39* Autotest command line interface: Alternatively, users also can use the
40autotest CLI, written in python
41
42== Getting started with autotest client ==
43
44For the impatient:
45
46http://autotest.kernel.org/wiki/QuickStart
47
48== Check out the main project documentation source ==
49
50You can find plenty of information on the autotest wiki
51
52http://autotest.kernel.org/
53
54That also contains references to the project activity
55
56http://autotest.kernel.org/timeline
57
58Links to an online view of the version control system
59
60http://autotest.kernel.org/browser
61
62== Grabbing the latest source ==
63
64http://autotest.kernel.org/wiki/DownloadSource
65
66== Hacking and submitting patches ==
67
68http://autotest.kernel.org/wiki/SubmissionChecklist
69
70== Downloading stable versions ==
71
72http://autotest.kernel.org/wiki/Download
73