Project

General

Profile

action #90008

[qe-core][typing] test fails in ncurses with typing issues - Improve by using serial_terminal and executing tests via bash

Added by SLindoMansilla 9 months ago. Updated 4 months ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Bugs in existing tests
Target version:
Start date:
Due date:
% Done:

100%

Estimated time:
Difficulty:

Related issues

Related to openQA Tests - coordination #43889: [qe-core][epic][functional][virtio][wayland] openQA makes spelling mistakesBlocked

Related to openQA Tests - action #95362: [qe-core] make zypper_call use serial terminal regardless of the architectureWorkable2021-07-12

History

#1 Updated by openqa_review 8 months ago

This is an autogenerated message for openQA integration by the openqa_review script:

This bug is still referenced in a failing openQA test: minimal_x
https://openqa.suse.de/tests/5669331

To prevent further reminder comments one of the following options should be followed:

  1. The test scenario is fixed by applying the bug fix to the tested product or the test is adjusted
  2. The openQA job group is moved to "Released"
  3. The label in the openQA scenario is removed

#2 Updated by tjyrinki_suse 8 months ago

  • Status changed from New to Workable

#3 Updated by tjyrinki_suse 8 months ago

  • Status changed from Workable to Feedback
  • Start date deleted (2021-03-12)

This needs refining of the description.

#4 Updated by szarate 8 months ago

  • Subject changed from [qe-core] test fails with typing issues - Improve by using serial_terminal to [qe-core] test fails in ncurses with typing issues - Improve by using serial_terminal
  • Status changed from Feedback to New

I'm starting to believe that anything that has to do with aarch64 in terms of calling things like zypper_call, to be shifted to serial terminal.

However the ncurses tests could be executed with a bash script since they rely on the assert_screen calls...

So:

1- switch to the serial terminal
2- install required packages
3- switch back to root console
4- rewrite test to call bash scripts from data directory rather than typing (prepare_test_data uncompresses everything in /home/bernhard)
5- Profit: make zypper_call switch to serial terminal regardless of the architecture unless no_console_switch=1 (new parameter)

#5 Updated by tjyrinki_suse 7 months ago

  • Status changed from New to Workable

#6 Updated by tjyrinki_suse 7 months ago

  • Subject changed from [qe-core] test fails in ncurses with typing issues - Improve by using serial_terminal to [qe-core][typing] test fails in ncurses with typing issues - Improve by using serial_terminal

#7 Updated by tjyrinki_suse 7 months ago

  • Related to coordination #43889: [qe-core][epic][functional][virtio][wayland] openQA makes spelling mistakes added

#8 Updated by tjyrinki_suse 7 months ago

  • Subject changed from [qe-core][typing] test fails in ncurses with typing issues - Improve by using serial_terminal to [qe-core][typing] test fails in ncurses with typing issues - Improve by using serial_terminal and executing tests via bash

#9 Updated by mgrifalconi 5 months ago

  • Assignee set to mgrifalconi

#10 Updated by mgrifalconi 5 months ago

Running some statistical investigation (https://progress.opensuse.org/projects/openqatests/wiki/Wiki#Statistical-investigation) to see if some any issue can be spotted:

for i in {003..100} ; do \
/usr/share/openqa/script/clone_job.pl \
--from https://openqa.suse.de \
--host https://openqa.suse.de \
-v  6357721       \
--skip-chained-deps \
ISO= \
SCHEDULE=tests/boot/boot_to_desktop,tests/console/cleanup_qam_testrepos,tests/console/ncurses \
_SKIP_POST_FAIL_HOOKS=1 \
QAM_TESTREPO_FAIL=purge \
TEST=mgrifalconi-investigation-ncurses-$i \
BUILD=mgrifalconi-investigation-ncurses \
_GROUP="mgrifalconi-investigation-ncurses" \
 ; done

Using mau-extratest as blueprint to copy, since ncurses is currently tested only on installation test suites, and they take a lot of time.

Observation: Why don't we move out as much as possible tests from installation jobs, to reduce risk of breaking the job and all its dependencies?
Does ncurses in particular need to be tested right after the installation? Can't be moved to mau-extratest?

Results: https://openqa.suse.de/tests/overview?build=mgrifalconi-investigation-ncurses

#11 Updated by mgrifalconi 5 months ago

  • Status changed from Workable to In Progress

#12 Updated by okurz 5 months ago

mgrifalconi wrote:

Observation: Why don't we move out as much as possible tests from installation jobs, to reduce risk of breaking the job and all its dependencies?
Does ncurses in particular need to be tested right after the installation? Can't be moved to mau-extratest?

I think QE-Core already has it on the backlog to move more and more tests into "extratests" which boot from existing disk images rather than doing all the tests within the same installation based scenario. However the approach of loading from images is not implemented. For these cases there can be "directly chained dependencies" to ensure that after an installation on a specific (physical) machine the installed OS is booted and subsequent tests can be executed.

#13 Updated by mgrifalconi 5 months ago

We agreed to move such test out of installation jobs to extratests or other jobs that boot from a disk, since there is no reason to run it right after installation.

It seems not possible to run the dialog command as part of a shell script, since it blocks there and the script never ends (waiting for a dialog). Considering it's only 2 commands, I propose to skip the switch to bash.

About changing the logic of zypper_call, wouldn't make sense to have a separate progress issue and try to advertise it a bit since everyone is using such method?

#14 Updated by mgrifalconi 5 months ago

Created https://progress.opensuse.org/issues/95362 about zypper_call refactoring

Created https://progress.opensuse.org/issues/95365 about moving ncurses out of installation tests

Will not move it to bash script since it's only 2 lines of code to be moved.

#15 Updated by mgrifalconi 5 months ago

#16 Updated by mgrifalconi 5 months ago

  • Status changed from In Progress to Resolved
  • % Done changed from 0 to 100

#17 Updated by szarate 4 months ago

  • Related to action #95362: [qe-core] make zypper_call use serial terminal regardless of the architecture added

#18 Updated by szarate 4 months ago

  • Target version set to QE-Core: Ready

Also available in: Atom PDF