qt5base-lts/tests/auto/uiloader
Friedemann Kleint e39f50154f Tests: Add widgets module to profile.
Ensure the right test macro is run.

Change-Id: I84d58038f25b000c05fd52e8bda92e4484d53a6e
Reviewed-on: http://codereview.qt.nokia.com/3805
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-08-29 15:35:18 +02:00
..
baseline Update licenseheader text in source files for qtbase Qt module 2011-05-24 12:34:08 +03:00
tst_screenshot Doc: Fixing typo 2011-07-07 10:44:07 +02:00
uiloader Tests: Add widgets module to profile. 2011-08-29 15:35:18 +02:00
.gitignore Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
desert.ini Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
dole.ini Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
gravlaks.ini Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
jackychan.ini Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
jeunehomme.ini Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
kangaroo.ini Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
kayak.ini Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
README.TXT Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
scruffy.ini Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
troll15.ini Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
tundra.ini Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
uiloader.pro Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
wartburg.ini Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
WTC0090dca226c8.ini Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00

   -------------------------------------------------------------------------
         TESTING WIDGETS DEFINED IN *.UI FILES (SCREENSHOT COMPARISON)
   -------------------------------------------------------------------------
              This test is based on dev/qt/tests/auto/atwrapper/


HOW TO RUN THE TESTS

    Compile the necessary programs:
        qmake
        make

    Now there should be an executable 'uiloader'.
    Run the tests:
        ./uiloader



CONFIGURATION

    The tests can be executed on different machines. For every machine there
    is a config file <hostname>.ini.

    If this file is not available the tests won't be run on the machine.

        Example kayak.ini:

            [General]
            ftpBaseDir=/arthurtest
            ftpHost=wartburg
            ftpPass=anonymouspass
            ftpUser=anonymous
            output=testresults

            [engines]
            1\engine=uic
            size=1

    Don't modify the [engines] section. Later it will be used for styles.  The
    only thing you might want to modify is the ftpHost value. At the moment
    wartburg is just a server on which we test the tests.

    The actual test server is: kramer.troll.no



HOW IT WORKS

    There are 3 important folders:

        tst_uiloader/       Actual program executing the tests.
        tst_screenshot/     Program to generate one *.png file out of *.ui
        baseline/           This is a dir with *.ui files.
        
    ./uiloader (compiled from tst_uiloader) will use the tst_screenshot program
    and the files in baseline/.

    In order to generate screenshots the *.ui files in baseline/ will be used.
    Therefore a folder testresults/ (specified in the config) will be
    created/used.

    Structure of testresults/:
        
        |-- testresults
        |   `-- i686 Linux g++-4 full-config    That's buildKey().
        |       `-- 4.5.0                       Used Qt version.
        |           |-- uic                     Here are the generated images.
        |           |-- uic.baseline            Baseline downloaded from server.
        |           |-- uic.diff                Diff Images of failed tests.
        |           `-- uic.failed              Generated images of failed tests.

    If there is no baseline at the server the results in uic/ will be uploaded
    as a new baseline (first run for your machine). So to create a new baseline
    on the server you just need to remove your folders there.

    On the server side there is a dir /arthurtest with following structure
    (it will be created if it's not there):

        |-- arthurtest
        |   `-- <your machines hostname>
        |       `-- <buildKey()>
        |           `-- <qt version>
        |               |-- uic.baseline    Baseline.
        |               |-- uic.diff        Here the local diffs will be uploaded.
        |               `-- uic.failed      Here the local failed files will be uploaded.

    After a test run the files in local uic.diff/ and uic.failed/ will be
    uploaded to the server.

    For every run the uic.diff/ and uic.failed/ on the local and remote machine
    will be cleared in order to place new files there. On the local side uic/
    gets cleared, too.