Bump for 3.6-28
[LibreOffice.git] / smoketest / losmoketest.readme
blob88091339d8d6f8a29f1ad8baca26742243c2c717
1 losmoketest.py
2 --------------
3 Yifan Jiang <yfjiang@suse.com>
4 http://dev-builds.libreoffice.org/
6 The tool is designed to enable test machine fully automatically run smoketest
7 with both daily and pre release build located in dev-build.libreoffice.org.
9 The purpose of daily build testing is obvious, we want to catch bugs as early
10 as possible:) some ideas canbe found here:
12     http://wiki.documentfoundation.org/Testing_Daily_Builds#Is_parallel_installation_possible_.2F_planned.3F
14 For the purpose of smoketest for pre release testing, currently there is an
15 about 24 hrs lag syncing RC build from dev-build to official site. We need to
16 guarantee at least the very basic function working before more people download
17 the RC build from official site and play with it, in as short as 24 hrs.
19 The tool is named as losmoketest for its purpose, meanwhile it help you to
20 check, download and install the latest build. By the fact the installation is
21 designed not to be different from manually doing these repeated work, the
22 installed libreoffice build can also be good for manual test.
24 Quick Start
25 -----------
27 This chapter describe step by step tutorials for a typical quick use of the
28 tool. More functions can be discovered in section "The Tool -> Usage".
30 [Linux]
32     0. If you do not have a python environment, firstly download python here:
34         http://www.python.org/download/
36     1. Download binary:
38         http://dev-builds.libreoffice.org/daily/losmoketest-0.2.tar.bz2
40     2. Unpack it to, for example, your home directory:
42         tar xvjf losmoketest-0.2.tar.bz2 -C $HOME
44     3. Open a terminal
46     4. In the terminal, input (there's an Enter between each lines):
48         su -
49         (enter your root password when it prompts)
50         cp /etc/sudoers /etc/sudoers.ori
51         echo "$USER ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
52         exit
54     5. In the terminal, input (there's an Enter between each lines):
56         cd $HOME/losmoketest-0.2
57         python ./losmoketest.py
59     A msg OK(1) would be shown When the result successfully
60     finished. Otherwise, please send the 'log' file to the author or mailing
61     list libreoffice-qa@lists.freedesktop.org for more investigation.
63     6. After finish testing, recover the sudoers file by (there's an Enter
64     between each lines),
66         su -
67         (enter your root password)
68         cp /etc/sudoers.ori /etc/sudoers
69         exit
71 [Windows]
73     0. If you do not have a python environment, firstly download python here:
75         http://www.python.org/download/
77     1. Download binary:
79         http://dev-builds.libreoffice.org/daily/losmoketest-0.2.tar.bz2
81     2. Unpack it to, for example, C:\
83     3. Open a console by clicking Start menu -> Run ...
85     4. Input 'cmd' and press Enter
87     5. In the terminal, input (there's an Enter between each lines):
89         cd C:\losmoketest-0.2
90         .\losmoketest.py
92     A msg OK(1) would be shown When the result successfully
93     finished. Otherwise, please send the 'log' file to the author or mailing
94     list libreoffice-qa@lists.freedesktop.org for more investigation.
97 The tool
98 --------
100 [Prerequisite]
102     - Python > 2.6
103         http://www.python.org/download/
105     - A machine free to play (The test may *override* your existed
106     libreoffice3.4 installation).
108     - On Linux, add the following line in /etc/sudoer:
110         $USER   ALL=(ALL) NOPASSWD: ALL
112       where $USER is your real user name. With this line, every command
113       initialed with `sudo` will not be asked to input a password. Please
114       consider the security risk brought by it.
116 [Features Availability]
118     Full features are implemented on Linux x86 and x86_64, rpm and deb:
120         - Checking and dowloading the latest build
121         - Install the latest build
122         - Run smoke test on the build (not stable)
124     Partial features are implemented on Windows:
126         - Checking and dowloading the latest build
127         - Install the latest build (Thanks *blip* help find out the command for silent install)
129     Partial features are implemented on Mac:
131         - Checking and dowloading the latest build
133 [Usages]
135     1. Test the latest pre releases build:
137            $ cd /path/to/losmoketest
138            $ ./losmoketest.py                 # Test the latest pre releases build:
139            $ ./losmoketest.py -t daily_master # Test the latest daily master build
140            $ ./losmoketest.py -t daily_branch # Test the latest daily branch build (now 3.4)
142     2. Just Install the latest LOCAL build:
144            $ cd /path/to/losmoketest
145            $ ./losmoketest.py -i                  # Install the latest pre releases build in losmoketest/_download
146            $ ./losmoketest.py -i -t daily_master  # Install the latest daily master build in losmoketest/_download
147            $ ./losmoketest.py -i -t daily_branch  # Install the latest daily branch build (now 3.4) in losmoketest/_download
149     3. Just Verify the installed build:
151            $ cd /path/to/losmoketest
152            $ ./losmoketest.py -v
154     4. More tips in:
156            $ cd /path/to/losmoketest
157            $ ./losmoketest.py -h
159 [Tested on]
161     - SLED 11 sp1 x86
162     - SLED 11 sp1 x86_64
163     - OpenSuSE 11.4 x86
164     - Ubuntu 10.10 x86
166 [TODO]
168     1. verify_smoketest() improvement (replace it with more simple script
169       rather than complicated cppunittester)
171     2. 'git' it when we have a stable code base
173     3. handling mac and windows build
175 [Known issue]
177     1. The cppunittest performs not quite stable in different libreoffice
178        build, some times it just hangs there without noticing :(
180     2. The version tag is desired to get dynamically. The current hard coded
181        3.4 is not reliable, especially not reliable when verify_smoketest()
182        tries to set LD_LIBRARY_PATH.
184     3. Parallel installation with official build has a dependancy on Tinderbox
185        improvement (the dev-build is ideally to be installed on something like
186        /opt/lo-dev).