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