Project

General

Profile

Actions

action #15310

closed

[functional][u][easy] wait_still_screen in start_x11_program wasting time when program with blinking cursor is started

Added by okurz over 7 years ago. Updated over 5 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Enhancement to existing tests
Target version:
SUSE QA - Milestone 18
Start date:
2016-12-06
Due date:
2018-08-28
% Done:

0%

Estimated time:
Difficulty:
easy

Description

observation

See

https://openqa.opensuse.org/tests/315091#step/kate/13

It's already four minutes after

https://openqa.opensuse.org/tests/315091#step/kate/11

problem

Wasting a lot of time waiting for still screen which is never happening as the cursor keeps blinking

suggestion

  • Make wait_still_screen fails fatal, why not let the test fail so that we see these problems? Or at least some warning in the log
  • Tweak start_x11_program to not wait in these specific cases

Further details

latest


Related issues 1 (0 open1 closed)

Related to openQA Project - action #39116: Add assert_still_screen functionalityResolvedokurz2018-08-03

Actions
Actions #1

Updated by okurz over 7 years ago

  • Description updated (diff)
Actions #2

Updated by okurz about 6 years ago

  • Subject changed from wait_still_screen in start_x11_program wasting time when program with blinking cursor is started to [functional]wait_still_screen in start_x11_program wasting time when program with blinking cursor is started
  • Target version set to Milestone 16
Actions #3

Updated by okurz almost 6 years ago

  • Subject changed from [functional]wait_still_screen in start_x11_program wasting time when program with blinking cursor is started to [functional][u] wait_still_screen in start_x11_program wasting time when program with blinking cursor is started
  • Due date set to 2018-06-05
Actions #4

Updated by okurz almost 6 years ago

  • Subject changed from [functional][u] wait_still_screen in start_x11_program wasting time when program with blinking cursor is started to [functional][u][easy] wait_still_screen in start_x11_program wasting time when program with blinking cursor is started
  • Status changed from New to Workable
  • Difficulty set to easy
Actions #5

Updated by mgriessmeier almost 6 years ago

  • Due date changed from 2018-06-05 to 2018-06-19
Actions #6

Updated by mgriessmeier almost 6 years ago

  • Due date deleted (2018-06-19)
Actions #7

Updated by okurz almost 6 years ago

  • Due date set to 2018-07-17
  • Target version changed from Milestone 16 to Milestone 17
Actions #8

Updated by okurz almost 6 years ago

  • Target version changed from Milestone 17 to Milestone 17
Actions #9

Updated by okurz almost 6 years ago

  • Target version changed from Milestone 17 to Milestone 18
Actions #10

Updated by okurz almost 6 years ago

  • Due date changed from 2018-07-17 to 2018-07-31

It's hackweek time!

Actions #11

Updated by okurz almost 6 years ago

  • Status changed from Workable to In Progress
  • Assignee set to okurz

Looking into start_x11_program now so I can take a look into this as well.

Actions #12

Updated by okurz over 5 years ago

  • Status changed from In Progress to Workable
  • Assignee deleted (okurz)

So worked on start_x11_program lately and I am finished with my part. The original issue is still true, e.g. see in https://openqa.opensuse.org/tests/713517/file/autoinst-log.txt

[2018-07-26T08:18:48.0453 CEST] [debug] /var/lib/openqa/cache/openqa1-opensuse/tests/opensuse/tests/x11/kate.pm:22 called testapi::x11_start_program
[2018-07-26T08:18:48.0453 CEST] [debug] <<< testapi::wait_still_screen(stilltime=3, similarity_level=47, timeout=30)
[2018-07-26T08:19:18.0288 CEST] [debug] >>> testapi::wait_still_screen: wait_still_screen timed out after 30
[2018-07-26T08:19:18.0288 CEST] [debug] /var/lib/openqa/cache/openqa1-opensuse/tests/opensuse/tests/x11/kate.pm:22 called testapi::x11_start_program

that is 30s wasted. Could be solved by either getting rid of the wait_still_screen or tweaking the similarity_level parameter.

Actions #13

Updated by jorauch over 5 years ago

  • Assignee set to jorauch
Actions #14

Updated by jorauch over 5 years ago

  • Status changed from Workable to In Progress

Actually working on this since friday.

Actions #15

Updated by jorauch over 5 years ago

Since the fail appeared with similarity level 47 I would suppose to set the level to 45 and check if this has unwanted side effects

Actions #16

Updated by mgriessmeier over 5 years ago

  • Due date changed from 2018-07-31 to 2018-08-14
Actions #17

Updated by jorauch over 5 years ago

Created PR:
https://github.com/os-autoinst/os-autoinst-distri-opensuse/pull/5500
This should avoid wasting time by waiting for blinking cursors

Next I will try to get wait_still_screen to tell us when it timed out so we see these situations better

Actions #18

Updated by jorauch over 5 years ago

Regarding the first suggestion we should not change wait_still_screen itself but try to check the return values when it is really critical
Also we have Log Entries so not sure, how to continue here

Actions #19

Updated by okurz over 5 years ago

PR merged, great! Yes, you are right in all your points. We could go with changing "wait_still_screen" to "assert_still_screen" by default and only use "wait_still_screen" or a hypothetical "check_still_screen" only in cases we want to explicitly check the return value. I already tried this with a new function assert_screen_change which is part of os-autoinst already doing the equivalent for wait_screen_change but I think it does not even work properly. When you want you can simply close the ticket or create new feature requests on the openQA issue tracker to have assert_screen_change and assert_still_screen functions with proper unit tests in os-autoinst. As a ticket first but if you are motivated we can also bring it into our backlog and work on that.

Actions #20

Updated by jorauch over 5 years ago

  • Related to action #39116: Add assert_still_screen functionality added
Actions #21

Updated by jorauch over 5 years ago

Created https://progress.opensuse.org/issues/39116 as a followup
Will add an output of the real similarity level to the logs and then close this

Actions #22

Updated by jorauch over 5 years ago

To print the last similarity level I would have to change the scope of $sim out of the loop

Actions #23

Updated by jorauch over 5 years ago

  • Status changed from In Progress to Feedback

After an adventurous journey for testing this I created https://github.com/os-autoinst/os-autoinst/pull/1009 to print the similarity level to the log

Actions #24

Updated by okurz over 5 years ago

  • Due date changed from 2018-08-14 to 2018-08-28

bulk move to next sprint as could not be discussed in SR

Actions #25

Updated by jorauch over 5 years ago

  • Status changed from Feedback to Resolved

PR is merged, therefore closing this ticket

Actions

Also available in: Atom PDF