## page was renamed from CompizTestPlan ## TOC ||<>|| === General Test instructions === '''Test releases''' 1. Grab the compiz release candidate from [[https://launchpad.net/~unity-team/+archive/compiz-testing | this PPA]]. 1. Go through each test and try to break it 1. If the test fails, record the issue on the existing bug report and in the [[Compiz/TestLog]] for this version 1. if you break it in a different way file a new bug report Note: depending on whether the test release introduces an ABI break, you will have to follow a different upgrade procedure '''If no ABI break in Compiz''' 1. install compiz, compiz-core, compiz-gnome, compiz-plugins, libdecoration0 2. restart unity 3. check it starts 4. kill unity-window-decorator and restart it '''If ABI break in Compiz''' 1. install compiz "core" packages like in I. 1. 2. install rebuilt version of libcompizconfig0, compiz-plugins-main, compiz-plugins-extra (if installed), unity 3. if ABI break in libcompizconfig -> install as well rebuilt versions of compizconfig-backend-gconf and python-compizconfig 2. restart unity 3. check it starts 4. kill unity-window-decorator and restart it '''Filing Bugs''' 1. Use the standard reporting tool {{{ubuntu-bug unity}}} 1. Tag the bug report with `compiz-testing` === Regression Testing for compiz-core === Main recurring issues in Compiz 0.9: * stacking order issues * invisible windows (mostly gone, if not as a symptom of the stacking issue above) * decorator crashers (stabilized with the old decorator, likely to come back with the new decorator branch) * focus issues * multi-monitor issues ==== Stacking Order Issues ==== '''Description''': the problem manifests itself with windows being displayed at the wrong Z order, ie above or below the windows they should usually be relative to. '''Reference bug''': [[Bug:735162]] '''General test guidelines''' * Open a variety of drop down menus and verify that they display at the expected top level in the window stack on the screen: * launcher quicklists (right click) * application menu on the panel * system settings menus on the right hand side of the panel * contextual menus in applications, for example right click in gnome-terminal to display its session prefs menu ==== Invisible Windows ==== Description: This issue mostly happens when starting applications as they open their main window and have it reparented by the the window manager, other reports also mention transient windows like dialog boxes. It also happened while trying to open the dash (SUPER, ALT-F2, or just clicking the Ubuntu icon) '''Reference bug''': [[Bug:728793]] '''General test guidelines''' * report every anomaly where a user expects a window to appear and doesn't see one * if the top left panel or the ubuntu button or anything on the top left of the screen seems to be unclickable, then it can be the sign of an invisible window masking other windows below Some old applications like xterm are known to have issues with their associated transient windows (try CTRL left, right, middle click on the xterm window) Additionally, Sam has an automated test case that can be run ==== Decorator Crashers ==== '''Description''': well, sometimes the decorator crashes: windows are left undecorated, ie without borders, shadows, and more importantly title bars '''Reference bug''': [[Bug:727041]] '''General test guideline''' * use the normal decorator functions, ie: minimize, maximize, close; either by clicking on associated window buttons, or by double clicking on the toplevel panel bar * repeat rapid sequences of the above functions like mini/maxi, as issues can be raised by race conditions * use alt-tab in rapid sequences * create a close transient windows, ie dialog boxes in applications; again in rapid sequences whenever possible * try to minimize/maximize main windows while an associated transient dialog window is kept open '''Reference bug''': (Can't find one yet) '''General test guideline''' * Open gnome-terminal, drag it to the left or right side of the screen, the preview should be slightly smaller because of gnome-terminals' size hints * Enable the winrules plugin in ccsm and add class=gnome-terminal to "No maximize windows". Now dragging up to the top of the screen should '''not''' show the maximize preview * Add class=gnome-terminal to "No resize windows". Now dragging to any side of the screen should '''not''' show the preview * Enable a second monitor, dragging to each side of each monitor should show the preview for each respective monitor ==== Focus issues ==== '''Description''': they keyboard focus is no transfered to the right window '''Reference bug''': [[Bug:748840]] "Windows should not automatically be focused when opened if the focus is on another application" '''General test guideline''' * Open a new Firefox (or Chrome) window in maximzed mode * Reveal the launcher and start Nautilus * Move the focus with the cursor keys like up/down * Expected result: the navigation should happen in Nautilus * ''With the bug, the web browser window will scroll instead'' === Desktop Test Plan Subset === Additional tests need should be performed to make sure that other regressions do not occur. This is accomplished by running a subset of the desktop test plan. * Run Unity's autopilot test suite: just run {{{/usr/lib/unity/autopilot.py}}} * Follow didrocks quick test procedure 1. try to move a window with alt + click 2. try to move/maximize/resize a window from the decorator 3. click on a indicator, see is show 4. click on a launcher icon, see the application appears 5. try to make the launcher hide 6. test alt + tab 7. test expo (super + s) 1. test multi-monitor support: the switcher window should appear on the monitor which hosts the active application window 1. logout/login -> check unity starts 1. logout, switch to classic session -> check compiz + gnome-panel starts and works with basic tests above === Decorator Tests === || '''Name''' || '''Description''' || '''Bug Reports''' || || Move windows || Move windows multiple g-terms, move around, switch between windows, go beyond screen limits || Bug:828101 || || Maximize / unmaximize || Try all known methods: double click title bar, window buttons, and drag to top/sides. As well as the accompanying drag away from top/sides. || Bug:828113 || || Window Buttons || Make sure they all work: close, minimize, maximize || Bug:828590|| || Right click menu || Right-clicking on a window decoration should *not* bring up a menu anymore || || || Resizing Windows || Try different sizes; resize a terminal to a 1x1 square; move windows around; try to resize g-calc (it shouldn’t) || Bug:827566 Bug:827560 || || Focus Switching || Focus switching via launcher, mouse clicks || || || Appearance || All windows have rounded tops, square bottoms, and proper shadows. || || === Test Cases for new Bug Fixes === Last, for each of the particular fixes that enter the tree, a test case now needs to be provided, in order to verify that the fix is effective. Here is a log of the recent bug fixes that have been submitted and their associated test cases. * [[Bug:692463]] merge display/size problems with xterm * '''test case''': verify that you can start an xterm window, are able to move it around, get focus and generally can interact with the xterm window content; try also CTRL+{left,right,middle}-click * '''regression testing''': verify that other windows appear with a correct size, position and decoration dimensions; look for decorations or windows being off by a few pixels * [[Bug:741074]] merge lp:~unity-team/compiz/trunk.icccm-4.1.4 - Fix for bug #741074 * new test case: See [[https://bugs.launchpad.net/unity/+bug/741074/comments/5|comment #5]] ## * regression testing: XXX ## Off the list for this release ## * [[Bug:747323]] Merging lp:~unity-team/compiz/trunk.grabs to fix bug #747323 ## * '''test case''': see lp:~smspillaz/+junk/grabtest ## 1. Unload the unity plugin (seems to be a bug in cairo that causes a crash with no backtrace here, not sure what's up with that). Unloading the unity plugin DOES NOT affect the results of this test, since it is a test of compiz core NOT unity. ## 2. Load the "Test Grabs" plugin ## 3. Launch compiz in a terminal (eg compiz --replace ccp &) ## 4. Press Control-Alt-t, which should display a message ## 5. Press Control-Alt-y, which should display a message, releasing Control or Alt will display another, releasing y will NOT ## 6. Press Control-Alt-i, which should display a message, pressing any other key should also display a message, until Control-Alt-i pressed again ## 7. Press Control-Alt-o, which should display a message, pressing keys Q W E R T Y should also display a message, any other key should "pass through" to applications, until Control-Alt-o pressed again ## 8. Launch app/testgrabs, enter "1" if the window displayed, press a, press control-a and it will exit. A message will be displayed in testgrabs and in compiz, saying that you pressed Control, but the app will still get Control-a this time around. * [[Bug:xxx]] Add stack attack hack, to resync internal stack structures and prevent further stacking issues * '''test case''': * '''regression testing''': verify that the window manager doesn't seem to freeze every minute or so, try launching a game, or interactive application that does a lot of event management and rendering at the same time * [[Bug:175874]] Helps with the weird ordering issues in alt-tab, but isn't a real fix (#175874) * '''test case''': open 4 different applications and cycle between them: verify that the last used one is always the first one offered by the switcher; verify that for other apps as they are used ## * regression testing: XXX * [[Bug:743011]] Fixes problems with gitk - Bug #743011: Windows that reparent away from the root before they are mapped can cause other windows to become invisible (and compiz to crash) * '''test case''': install and launch gitk in a git branch, verify that compiz doesn't crash ## * regression testing: XXX * [[Bug:740298]] Fix to avoid compiz detection by fglrx driver: bug #740298 * '''test case''': See [[https://bugs.launchpad.net/ubuntu/+source/compiz/+bug/740298/comments/2|comment #2]] - install the fglrx driver and verify that the unity session opens and that the main interface elements are functional: launcher, dash, panel ## * regression testing: XXX * [[Bug:730495]] Fix for uwd crashing on a 2nd session * '''test case''': open a first Unity session; then open a guest session (or another user session): confirm that the decorator doesn't crash in the second session * '''regression testing''': try to launch a program from within compiz (enable the command plugin for ex.) and confirm it appears on the right display (especially if you have 2 sessions open at the same time, because of the previous test) * [[Bug:743634:]] Fix for decorator oddities due to 2D mode being broken * '''test case''': open several windows and move them around, one after the other: verify that the right windows are actually moved * [[Bug:741656:]] Fix for wrong window moves across workspaces * '''test case''': start 3-4 applications, with 1 or 2 in maximized mode; open the workspace switcher, move windows around across workspaces: verify that the right windows are actually moved. Refer to the video in the original bug report for an exemple * '''regression testing''': control that all open windows appear on the workspace switcher; verify that one can still switch to the different workspaces * [[Bug:754088]] Fix for broken animation * '''test case''': drag application to either side of the screen, small preview animation should show, window rendering should NOT be broken, dragging from one side to maximized and back should restore the original size of the window * [[Bug:743807 ]] Compiz crashed in DecorWindow::get * '''test case''': use alt-tab to switch windows, there should be no crash * [[Bug:753369 ]] Random artifacts * '''test case''': right click on a titlebar, make sure that click is released quickly, then left click the titlebar and move the window *slightly*. There should not be an artifact of the menu left behind * [[Bug:743834-- * '''test case''': unity should never ever ever appear under other windows. Open some menus and verify that they are actually accessible. * [[Bug:753951]] Focus problems (Thunderbird) * '''test case''': write a message with TB using keyboard shortcuts, verify that the focus is returned to the main TB main window * '''regression testing''': Need to write a testcase here which demonstrates the focus scenarios. No time for N thought * [[Bug:757434]] Stacking problems with normal windows above fullscreen windows * '''test case''': First fullscreen a window, then alt-tab to a non-fullscreend, window, the launcher and panel should be on top. Then switch back to the fullscreen one, the panel and launcher should NOT be on top. Now unfullscreen the previously fullscreened window and alt-drag it towards the panel. It should NOT go on top of the panel. Click the BFB and the menu should open OVER the window. Also test with the systray - whenever the panel is visible during all of these steps, the systray also should be. * '''regression testing''': Still waiting for time to write a testcase to excersize stacking. * [[Bug:758307]] Crash with Inkscape/Unison or Java Citrix Client * '''test case''': try launching any of these apps and look into the bug report here (https://bugs.launchpad.net/ubuntu/+source/unity/+bug/759134) to see how to reproduce the crasher with Inkscape; Try unison or Citrix depending on what's available for the tester Open Unison, create new profile, "Music" "Videos" next, next, and then it should not crash * [[Bug:740126]] * '''test case''': maximize a window and demaximize it. Repeatedly. Try doing it when other applications are launching or when a window is also being resized. * '''regression testing''': Programmatic example to be provided * [[Bug:755459]] * '''test case''': on closing of any dialog box or opening of any dialog box the window shouldn't be invisible. Try doing this after closing some windows and then opening some other ones directly afterwards. Unfortunately it's a race and the chances of reproducing it are very low. Things to watch out for are windows that have two decorations (not seen yet, but could be possible because of what the fix touches) or windows that are invisible '''and in the top left hand corner of the screen'''