Project

General

Profile

Actions

action #130003

closed

coordination #121855: [epic] Agama web interactive installation

Add test for Full-disk encryption installation

Added by JERiveraMoya 11 months ago. Updated 10 months ago.

Status:
Resolved
Priority:
High
Assignee:
Target version:
Start date:
2023-05-29
Due date:
% Done:

0%

Estimated time:

Description

Motivation

Use Playwright and Page Object Model create a Typescript test that does Full-disk encryption with Agama.

Test should go to Storage, enable encryption, type password, confirm password (we don't need to check in the screen that the UI reflect the encryption for now, because the UI is changing too much at the moment and we are interested in the installed system to verify, but we will do in due time).
Add user and install.

Scope

Installations of ALP Micro, ALP Bedrock and Tumbleweed using Agama for all architectures available in openQA (s390x and ppc64le excluded for now).

Acceptance criteria

AC1: Get familiar with Playwright and use the playwright test generator to get first version of your code.
AC2: Locate only the auto-generated code related with disk-encyprytion and convert it to Page Object Model.
AC3: Add new test to our QE repo e2e-agama-playwright using that POM.
AC4: Add new test under folder tests/yam/validation/ that perform a simple validation of a full-encrypted disk.

Additional information

Playwright documentation: https://playwright.dev/docs/intro
Playwright documentation - Page Object Model: https://playwright.dev/docs/pom
How to use playwright with Agama: https://github.com/openSUSE/agama/blob/master/playwright/README.md
Notice that for development in your system, you will need to install playwright and run npx playwright test, due to in the live iso the command to run is different as described in doc above, playwright test.

Don't worry about anything else than enabling encrpytion from Storage page and the small popup that allow us to encrypt, so you can narrow the scope of this ticket to one POM which only contains the enable button and another POM that only contains the popup with the two passwords.
LVM implementation or mapping of the UI element will be done in a different ticket.
The rest of the implementation, the main page, how to navigate from main page to storage page, etc, will be provided in a different PR, so it will be acceptable that only the part for encryption is modelated with POM and not the rest, the part related with the user creation will be also done without POM, just pick what you need using Playwright test generator, we will refactor it later.

IMPORTANT: While #130000 is not yet resolve, please add a call to yupdate in your test so live-cd can pick the new test/code you implement from a branch


Files

Encryption_settings.png (36.6 KB) Encryption_settings.png JERiveraMoya, 2023-05-30 08:24
encrypt_fs.spec.ts (1.24 KB) encrypt_fs.spec.ts Simple test for setting encryptiion password rainerkoenig, 2023-06-01 13:52
Actions

Also available in: Atom PDF