Mir

Differences between revisions 20 and 88 (spanning 68 versions)
Revision 20 as of 2014-04-15 11:47:08
Size: 2762
Editor: sergiusens
Comment:
Revision 88 as of 2024-05-09 09:51:52
Size: 4484
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
## page was copied from Process/Merges/TestPlans/Template
## page was renamed from Process/Merges/TestPlans/Common
## page was renamed from Process/TestPlans/Common
Line 6: Line 2:
 * '''Component Checklist''': https://wiki.ubuntu.com/Process/Merges/Checklists/Mir
 * '''Trunk URL''': lp:mir
 * '''Trunk URL''': [[https://github.com/MirServer/mir/|github:MirServer/mir]]
Line 9: Line 4:


== Dependents/Clients ==

Clients of this component

 * '''Unity-Mir''' http://code.launchpad.net/unity-mir
 * '''Platform-api''' http://code.launchpad.net/platform-api
 * '''Xmir''' https://github.com/RAOF/xserver
Line 22: Line 7:
'''This test plan is not supposed to be complete; use it to guide your manual testing so they don't miss big functional areas that are part in the component; also this should be used as guideline to inspire the exploratory testing which should be adapted smartly based on the real content of a release'''
Line 23: Line 10:
 * In addition, install updated image on phone and tablet
 * Install packages from build silo
  * note: even safer to install only the packages you've built (not dist-upgrade)
  * Ensure navigating/scrolling the ui/Dash works as expected (note: cross check known unity8 bugs for any oddities witnessed)
 * Ensure time out and power button blanks screen, and power button unblanks screen
 * Ensure app launches and can quit
  * make sure to launch multiple apps and swap them
  * when you launch the app, do not touch the screen and make sure it updates
  * when you quit the app, make sure a new app doesn't launch
 * Browser copy/paste to notepad
  * open browser, go to cnn.com article with text
  * select text, long press for copy prompt, press copy
  * launch notepad, new note, long press to activate paste prompt, paste
  * select note to activate OSK, rotate a few times and ensure osk and notepad follow rotation
  * note copy/paste, OSK, rotation, moving between apps should function as expected
 * Notepad copy/paste to message app
  * open notepad, type some text
  * long press to prompt & select all text
  * long press again to prompt & copy text
  * dismiss keyboard
  * open message app, activate compose area, long press to prompt, paste
 * Download click & launch (covers dash, click, osk, acct)
  * (without having setup accounts) Navigate to the Dash recommended applications
  * select app, select install
  * should be prompted to settings, enter U1 info with OSK
  * return to dash install app, open app
  * note the various screen switching and OSK prompting should function as expected
 * run unity8 AP test per https://wiki.ubuntu.com/Touch/Testing#Testing_your_Ubuntu_Touch_Code_before_submission
 * run browser AP test (ensure pass rate is similar to smoke results)
 * If mirclient API break, test Xmir on desktop
 * If any oddities are witness, retest virgin image without mir changes
 * phablet-screenshot running from a desktop connected to the device shall work for all supported devices (manta, flo, mako).
 * Verify that the mir-tests-tools snap works

== Testing mir-test-tools ==

These tests should work on all supported series of Classic and on Ubuntu Core. First check that the `candidate` channel has been updated with the release candidate:

   * $ '''snap info mir-test-tools'''

This should show something like:

   * '''beta: 1.2.0-snap45 2019-05-22 (415) 121MB -'''

Where the version number matches the release being tested.

   * $ '''snap install --beta mir-test-tools'''

There's a "handy script" to test the snap on the Wiki:

   * https://github.com/MirServer/mir-test-tools/wiki/Notes

Copy this and run it.

=== Test Plan 20.04LTS or later ===

==== Test Matrix ====
||'''Platform'''||24.04LTS||22.04LTS||24.10||
||gbm-kms|| || || ||
||gbm-x11|| || || ||
||gbm-wayland|| || || ||
||eglstream-kms|| || || ||
||virtual|| || || ||

||'''Console'''||24.04LTS||22.04LTS||24.10||
||minimal|| || || ||
||linux-VT|| || || ||
||logind|| || || ||

||'''WM'''||24.04LTS||22.04LTS||24.10||
||floating|| || || ||
||tiling|| || || ||
||kiosk|| || || ||

 * In addition update desktop from archive
  * Install packages from the [[https://launchpad.net/~mir-team/+archive/ubuntu/rc|release candidate PPA]]:
   * $ '''sudo add-apt-repository --update ppa:mir-team/rc'''
   * $ '''sudo apt install mir-demos mir-platform-graphics-virtual mir-graphics-drivers-desktop mir-test-tools'''
  * Install applications to test with:
   * Qt Wayland support, qterminal and kate to test with:
    * $ '''sudo apt install qtwayland5 kate qterminal'''
   * Install weston-terminal:
    * $ '''sudo apt install weston'''
   * Install glmark2:
    * $ '''sudo apt install glmark2-wayland'''

 * Commands for testing specific features:
  * Console provider
   * `--console-provider=vt --vt=4`
    * This requires running with root privileges
    * Need to ensure that `XDG_RUNTIME_DIR` is set in the environment. If using `sudo`, it might strip this out; running something like `sudo env XDG_RUNTIME_DIR=/run/user/1000 miral-shell …` will ensure this is set.
   * `--console-provider=logind`
     * Switch to VT4, sign in and `miral-app ...`
   * `--console-provider=minimal`
    * Used when all others fail.
    * Does not provide VT switching capabilities (Ctrl-Alt-F1, etc)
    * Used for the gbm-x11, gbm-wayland & virtual platforms
  * Window Manager
   * `--window-manager=tiling`
   * `--window-manager=floating`
   * `-kiosk`
  * Testing specific platforms
   * `--platform-display-libs=mir:$NAME --platform-rendering-libs=mir:$NAME`
    * Platform
      * X11: Use an X11 supporting desktop
      * virtual: `--platform-display-lib=mir:virtual --virtual-output=1280x1024`
       * Also add wayvnc support: `--add-wayland-extension=zwp_virtual_keyboard_manager_v1:zwlr_virtual_pointer_manager_v1:zwlr_screencopy_manager_v1`
       * In a separate terminal run: `WAYLAND_DISPLAY=wayland-1 ubuntu-frame-vnc`
       * In a separate terminal run: `gvncviewer localhost`
      * wayland: `--platform-display-lib=mir:wayland --wayland-host=$WAYLAND_DISPLAY`
  * Some tests
    * Run the "smoke tests" to ensure the example clients work
      * Start a terminal sessions to launch the tests.
      * $ '''mir-smoke-test-runner'''
      * Check the result is "I: Smoke testing complete with returncode 0"
    * try some apps
     * $ '''miral-app'''
     * [in the nested session] Try running, resizing, moving and switching between the following:
       * $ '''kate'''
       * $ '''gnome-terminal'''
       * $ '''weston-terminal'''
       * $ '''glmark2-es2-wayland'''

   * Run a test "tiling desktop" session
     * $ '''miral-app --window-manager tiling'''
     * Try running, and switching between the following:
     * $ '''kate'''
     * $ '''gnome-terminal'''
     * $ '''weston-terminal'''
     * $ '''glmark2-es2-wayland'''

Test Plan

This test plan is not supposed to be complete; use it to guide your manual testing so they don't miss big functional areas that are part in the component; also this should be used as guideline to inspire the exploratory testing which should be adapted smartly based on the real content of a release

  • Successful run of automated CI testing
  • Verify that the mir-tests-tools snap works

Testing mir-test-tools

These tests should work on all supported series of Classic and on Ubuntu Core. First check that the candidate channel has been updated with the release candidate:

  • $ snap info mir-test-tools

This should show something like:

  • beta: 1.2.0-snap45 2019-05-22 (415) 121MB -

Where the version number matches the release being tested.

  • $ snap install --beta mir-test-tools

There's a "handy script" to test the snap on the Wiki:

Copy this and run it.

Test Plan 20.04LTS or later

Test Matrix

Platform

24.04LTS

22.04LTS

24.10

gbm-kms

gbm-x11

gbm-wayland

eglstream-kms

virtual

Console

24.04LTS

22.04LTS

24.10

minimal

linux-VT

logind

WM

24.04LTS

22.04LTS

24.10

floating

tiling

kiosk

  • In addition update desktop from archive
    • Install packages from the release candidate PPA:

      • $ sudo add-apt-repository --update ppa:mir-team/rc

      • $ sudo apt install mir-demos mir-platform-graphics-virtual mir-graphics-drivers-desktop mir-test-tools

    • Install applications to test with:
      • Qt Wayland support, qterminal and kate to test with:
        • $ sudo apt install qtwayland5 kate qterminal

      • Install weston-terminal:
        • $ sudo apt install weston

      • Install glmark2:
        • $ sudo apt install glmark2-wayland

  • Commands for testing specific features:
    • Console provider
      • --console-provider=vt --vt=4

        • This requires running with root privileges
        • Need to ensure that XDG_RUNTIME_DIR is set in the environment. If using sudo, it might strip this out; running something like sudo env XDG_RUNTIME_DIR=/run/user/1000 miral-shell … will ensure this is set.

      • --console-provider=logind

        • Switch to VT4, sign in and miral-app ...

      • --console-provider=minimal

        • Used when all others fail.
        • Does not provide VT switching capabilities (Ctrl-Alt-F1, etc)
        • Used for the gbm-x11, gbm-wayland & virtual platforms

    • Window Manager
      • --window-manager=tiling

      • --window-manager=floating

      • -kiosk

    • Testing specific platforms
      • --platform-display-libs=mir:$NAME --platform-rendering-libs=mir:$NAME

        • Platform
          • X11: Use an X11 supporting desktop
          • virtual: --platform-display-lib=mir:virtual --virtual-output=1280x1024

            • Also add wayvnc support: --add-wayland-extension=zwp_virtual_keyboard_manager_v1:zwlr_virtual_pointer_manager_v1:zwlr_screencopy_manager_v1

            • In a separate terminal run: WAYLAND_DISPLAY=wayland-1 ubuntu-frame-vnc

            • In a separate terminal run: gvncviewer localhost

          • wayland: --platform-display-lib=mir:wayland --wayland-host=$WAYLAND_DISPLAY

    • Some tests
      • Run the "smoke tests" to ensure the example clients work
        • Start a terminal sessions to launch the tests.
        • $ mir-smoke-test-runner

        • Check the result is "I: Smoke testing complete with returncode 0"
      • try some apps
        • $ miral-app

        • [in the nested session] Try running, resizing, moving and switching between the following:
          • $ kate

          • $ gnome-terminal

          • $ weston-terminal

          • $ glmark2-es2-wayland

      • Run a test "tiling desktop" session
        • $ miral-app --window-manager tiling

        • Try running, and switching between the following:
        • $ kate

        • $ gnome-terminal

        • $ weston-terminal

        • $ glmark2-es2-wayland

Process/Merges/TestPlans/Mir (last edited 2024-05-09 13:09:10 by alan-griffiths)