Skip to content

Project Overview

Alan Pope edited this page May 15, 2024 · 1 revision

Project Overview

Primary user

The envisaged primary user of Quicktest is the Linux enthusiast wishing to contribute to QA testing before a software release. For example, in the Ubuntu ecosystem, users contribute manual test results. Many of those tests are time-consuming and require repeated runs when new ISO images are spun up.

Some of the tests could be automated to lower the manual workload. That's where Quicktest comes in.

Goals

At a high level, this is what Quicktest is all about:

  • Providing a utility that enthusiasts can use to automate some OS tests in the Linux community
  • Creating a set of tests that are understandable and maintainable
  • Enabling technically savvy enthusiasts to develop and contribute new tests

Philosophy

Quicktest aims to treat the machine being tested as a user would. That is, it injects keypresses and mouse clicks as a human tester would, and inspects the screen as a human subject would.

Quicktest takes a non-intrusive approach to testing. It aims to perform all necessary actions from 'outside' the virtual machine, without the need to install any software inside the guest. This ensures the safety of your system and the integrity of the test results, as it mimics the actions of a QA user using only the keyboard and mouse.

This ensures the guest OS is not tainted, which could change the test outcome.

Enthusiastic users should be able to both run and contribute to tests. New tests are welcome as pull requests.

Alternatives

There are many cloud and server-based prior art in terms of automated testing. None of those researched during the creation of Quicktest seem able to hit the sweet spot of ease of use and ability to be run locally with minimal setup.

That said, Quicktest can be run in an automated fashion, on a dedicated server, or within a CI/CD pipeline. But that wasn't the envisaged primary use case.

Clone this wiki locally