Testing Checklist - understanding the testcases

The Lubuntu Testing Checklist can be found here

In this post I will talk about some of our various testcases. Most I hope are pretty easy to work out, and won’t need this explanation, so feel free to read only the portions you may find interesting.

Installer Tests

The document starts with a list of dates which will be amended (added to etc) as necessary.

Next is a list of packages, eg.

    lubuntu-default-settings: 21.10.2
    casper 1.465

The significance of these are, if any of these packages change, all install tests must be done again.

Full disk install tests

These should be pretty easy to understand, put simply it’s four test installs for each of three categories

  • BIOS box (old type boxes)
  • uEFI box (more recent boxes)
  • Secure uEFI box (recent box with higher-level of boot security)

with combinations of the settings of

  • encryption / no-encryption
  • internet / off-line
  • swap (yes / no)

The tester puts their name, the date it was tested (your local date is fine) and importantly the ISO date.

(all ISOs have a date on them, if you head /etc/apt/sources.list you’ll see a line at the top of any box (assuming it wasn’t removed) that gives the date of the install media used)

The pc.detail is a very-shortened form of the hardware used to perform the tests. Ideally as many different boxes will appear in this column; but it’s limited to whatever boxes we have ready access to.

Other install types

Install Alongside: I hope is self-explanatory; it’s called “autoresize” in most testing QA as that’s the terminology used by the ubiquity installer used by Ubuntu Desktop and many flavors. Lubuntu uses calamares where it’s a install alongside. This type of install shrinks a partition making space for a new partition for the new install. Tests of this cannot be expected to work if it’s impossible (eg. if using a DOS/MBR partition table and 4 primary partitions already exist - you cannot expect the installer to create a 5th given there is a maximum of 4 primary partitions possible). You need to check all systems boot normally here (ie. not just the new Lubuntu install)

Replace partition: Again I hope it’s self-explanatory; but whatever was on that partition will be formatted and a new system installed there. It’s another menu selection in the calamares installer so nothing special is required here. If the box has multiple OSes installed; you should ensure all boot correctly; not just your new Lubuntu install.

Install using existing partition:

This may not be self-explanatory, and it’s the one the writer of this personally loves (about Ubuntu installers). If you break your system because you made some packaging mistakes - this is a quick & easy fix. It’s also a great fix if a release-upgrade goes wrong, or even if you don’t have sufficient time to let it run (this install is far faster!)

Boot the live media and select “Manual Partitioning”, You need to select your existing partition(s) but ensure you don’t format them (esp. the / partition); as it’s the no-format that triggers this install type. The installer will

  • take note of your manually installed packages
  • erase system directories
  • install the new system
  • if internet is available install the extra packages noted earlier
  • ask to reboot (and won’t touch any user files unless you formatted)

To perform this test you need a pre-installed system, eg. a prior Lubuntu install, which you’ll install over (or using the existing partition). You’ll want it to include some user files (they shouldn’t be touched, eg. I use music), and have at least one package you’ve added (to ensure something gets re-installed; eg. I use clementine as it’s my preferred music player so I can play my music as I perform post-install checks!)

Perform the install, reboot (checking any other OSes installed still boot as well) and check to make sure you have a fresh system (I usually jump to terminal & look at file/directory dates), but user files aren’t touched (ie. you have music to play), and your additional packages got installed (ie. you have clementine to play that music). If you have playlists on your box; clementine should continue where it last was before the install - ie. a successful test :slight_smile:

Note: I’m using clementine as example but it can be any package(s) found in

  • Ubuntu repositories
  • not included by default with a new Lubuntu install

eg. I usually use boxes where my terminals open with the machine name piped thru figlet (echo $HOSTNAME | figlet), and show a fortune piped through cowsay … ie. when I use CtrlAltT to open a terminal I get confirmation that multiple packages were re-installed + hopefully a good joke with just three keys, but again this is example only.

Non QA-test note: this type of install won’t fix any user config issues that exist, as none of that is touched. It’s useful in real life to fix package problems (corruption etc) generally as system directories get erased, then new packages installed. Because user files aren’t touched, any user config issue will remain even after this type of install.

Custom partitioning with separate /home: I’d hope pretty clear; two partitions at minimum are required here (sorry I’m not counting the ESP which is created & necessary if using a uEFI/GPT box so you may have 3 not 2; legacy boxes can be two only still) You use “Manual Partitioning” and need

  • / partition
  • /home partition
  • /boot/efi (optional but maybe mandatory too)

Install, check any other OSes on your box boot, then checkout the new install.You don’t need to format the /home partition in this QA-test, just use one (but it’s far better if you use calamares to create both partitions - ie. make it a really useful test!). If you don’t format /home, on login your old system configuration should survive install :slight_smile: but if you create a new partition (or format) you’ll have a new looking Lubuntu system. :heart_eyes:

Custom partitioning on XFS/BTRFS: This is just a simple testcase where XFS or BTRFS are used for the / partition. The /home can be a separate partition, or the same and need not be file-system used by / if you don’t want it to be. No special options are used meaning it’s not a thorough testing that an enterprise would want before they’d use it for a server install.

Two install cases that can be ticked off with another install: another language & auto-login

Install using another language:: Much of the development team use english as their native language; so this is just an install using any non-english language. You can tick this category off at the same time as any other install type.

Auto-login after install: You’ll note there is an auto-login checkbox; this is another special case that should be linked with any other install, the only difference is the box should auto-login (meaning you won’t see the greeter/login page (ie. sddm); but if it’s encryption install - you still need to enter encryption keys of course)

General advice:

If your box has multiple OSes installed; and they weren’t overwritten, they should continue to work after your install just as they did before you installed. To prevent data loss; it’s best if you use a test box for these installs; or if you use a system you do actually use; ensure you have great backups prior to starting any QA-test installs.

When QA-testing it’s easy to setup & do exactly what the testcase requires (esp. if we repeat the test a few times), however that’s not always what real people do. I often make mistakes (picking the wrong option for example, waiting a little simulating changing my mind) then correct the mistake, or what I believe real end-users would do in real life. You’re welcome to act as you believe a real user would (choosing experienced, beginner, hesitant - you create the user in your mind) do, but in my experience don’t push the installer too hard; it doesn’t seem to like ditherers and has its limits.

Additional testcases:

Here we get to the release-upgrade testcases (ie. not installs). You need a system to upgrade; it also needs to be of the correct release (eg. latest stable release)

TUI = textual user interface; ie. performed from a text interface, eg. CtrlAltF4 to switch away from a GUI and to a text interface. You’ll use the command

do-release-upgrade -d

(the -d option is necessary as the release is still in development)

GUI = graphical user interface; ie. LXQt for Lubuntu. This is performed via opening a virtual terminal (eg. CtrlAltT) and then executing the command

do-release-upgrade -d -m desktop -f DistUpgradeViewKDE

(The Qt5 interface just uses the name KDE; it’s not KDE specific)

The rows from “prior release” mean from say 21.04 to 21.10, where as the LTS to next LTS will mean 20.04 to 22.04.

We may change the LTS to LTS to be “from LTS” which would mean from 20.04 to 21.10 for example, but currently that’s not QA-tested by Lubuntu here

If you’re new to launchpad, testcases or making a one line summary of your machine, you may find some clues at the Lubuntu Impish Indri Beta Testing Week page. You’ll also find more on reporting bugs, and getting help from Lubuntu team members there too :slight_smile:

If you have any questions, or need clarification on anything - please just ask :slight_smile: