|
LayoutTestsLinux
Running webkit layout tests on Linux
linux Running webkit layout tests on Linux
See Running WebKit Layout Tests for full documentation about set up and available options. Pixel TestsThe pixel test results were generated on Ubuntu 10.4 (Lucid). If you're running a newer version of Ubuntu, you will get some pixel test failures due to changes in freetype or fonts. In this case, you can create a Lucid 64 chroot using build/install-chroot.sh to compile and run tests. FontsMake sure you have all the necessary fonts installed. sudo apt-get install apache2 wdiff php5-cgi ttf-indic-fonts \ msttcorefonts ttf-dejavu-core ttf-kochi-gothic ttf-kochi-mincho \ ttf-thai-tlwg You can also just run build/install-build-deps.sh again. PluginsIf fast/dom/object-plugin-hides-properties.html and plugins/embed-attributes-style.html are failing, try uninstalling totem-mozilla from your system: sudo apt-get remove totem-mozilla Running webkit layout tests under valgrind on LinuxAs above, but use tools/valgrind/chrome_tests.sh -t webkit instead. e.g. sh tools/valgrind/chrome_tests.sh -t webkit LayoutTests/fast/ This defaults to using --debug. Read the script for more details. If you're trying to reproduce a run from the valgrind buildbot, look for the --run_chunk=XX:YY line in the bot's log. You can rerun exactly as the bot did with the commands cd ~/chromium/src echo XX > valgrind_layout_chunk.txt sh tools/valgrind/chrome_tests.sh -t layout -n YY That will run the XXth chunk of YY layout tests. Configuration tips
Getting a layout test into a debuggerThere are two ways:
Using an embedded X serverIf you try to use your computer while the tests are running, you may get annoyed as windows are opened and closed automatically. To get around this, you can create a separate X server for running the tests.
Xephyr supports debugging repainting. See the Xephyr README for details. In brief:
If you don't want to see anything at all, you can use Xvfb (should already be installed).
Tiling Window managersThe layout tests want to run with the window at a particular size down to the pixel level. This means if your window manager resizes the window it'll cause test failures. This is another good reason to use an embedded X server. xmonadIn your .xmonad/xmonad.hs, change your config to include a manageHook along these lines: test_shell_manage = className =? "Test_shell" --> doFloat
main = xmonad $
defaultConfig
{ manageHook = test_shell_manage <+> manageHook defaultConfig
...
|