[jit] Enable partial generic sharing when not using AOT as an experiment.
[mono.git] / mcs / class / Managed.Windows.Forms / Test / automated / README
1 This is my hack for automated UI tests.  It requires the following software:
2
3         1. Xnest (X server in a window).  should be packages for your favorite distro.
4         2. Xnee (recording/playback of X events):  http://www.gnu.org/software/xnee/
5         3. netpbm (specifically xwdtopnm and pnmtopng)
6         4. ImageMagick
7
8 1. Adding tests
9
10         this is pretty complicated at the moment, and I haven't checked in anything to do it yet.
11
12         The directory name tells the harness which compiler to use.  1.1 tests should be named
13         "test-<something>", while 2.0 tests should be named "test2-<something>"
14
15 2. Running the tests
16
17         $ make test
18
19         This will pop up a rather large Xnest window (1000x700), so don't run the tests expecting
20         to be able to do much else.
21
22         An individual test can also be run (although not from the Makefile):
23
24         $ ./harness.sh test test2-80422
25
26 3. Checking for failures
27
28         If tests fail, there will be a number of additional files left in the directory.  They
29         are named "result-0.png", "differences-0.png", etc.
30
31         The "result" files are the actual screen dumps of the test run, and the "differences"
32         files show the regions of differences between the "result" file and the corresponding
33         baseline.  That is, "differences-0.png" highlights the differences between "result-0.png"
34         and "0.png".
35         
36 3. Generating baselines
37
38         The images (0.png, 1.png) in the test directories can be regenerated using the command:
39
40         $ make baseline
41
42         this should only be done when you can verify that the tests are working properly and all
43         that's changed is the rendering.
44
45         You can also generate baselines for individual tests, using the following command:
46
47         $ ./harness.sh baseline test2-80422