Jump to content

Akademy/2025/QA And Recoverability

From KDE Community Wiki

Summary

Discussed various options on testing. It probably makes the most sense to stick with selenium but polish up the experience substantially. Also moving some of the load into daily kde linux tests instead, particularly from workspace. For recoverability we want to have a plasma safe-mode. We've also found a good system that should help us offer a better my-system-is-frozen story.

Automated QA

  • Testing the apps once packaged
  • Use the same as CI
  • Want things re-usable in different contexts

OpenQA

  • had it neon for a year
  • everything broke because the font changed...
  • how often it breaks is the important thing

Selenium

  • only works application level, not full distro images

KDE Linux right now

EFI addon, systemd unit runs only with the trigger, this checks session started created

  • might be a challenge Ubuntu core side... but that's a kevin problem
  • QtQuick apps had issues. More custom components. Base QtQuickControls2 is better.

Should fix it anyway. More work will fix it

  • They're super flakey
  • Need to be written in a special way which is very verbose.
  • Kate break 50% off
  • VM had it better, but still not good

Would new API help? Higher level API

  • always assume VM
  • no mocking
  • we can now run VM's on clients

The more intelligible a breakage is, the more useful

Cadence of tests is flexible. Nightly makes sense

The problem is making people care.

Track BOM of all the things, so that bisecting all parts is doable


The tests in p-w should be smaller and self contained.


Recoverability

KDE Linux has multiple OS images

What if the build boots, but sucks:

  • actually that is handled

What about a dodgy 3rd party widgets

  • Gnome has a safe mode
  • Plasma needs something like that
    • restrict by path
    • kpackage framework

There are different layers:

  • I have a bad widget (safe mode) This will also bring up a window listing other stuff
  • I made a bad change (soft reset at a KDE Linux level)
  • Maybe throw away .config etc. Maybe we want a kde/all split. This is a messaging problem
  • I've made a bigger change (factory reset, but keep /home /var)
  • Full factory reset
  • SecureAttentionKey

Task list

  • the kpackage thing: Alexander