Project

General

Profile

action #15310

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

Added by okurz almost 5 years ago. Updated about 3 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

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

History

#1 Updated by okurz almost 5 years ago

  • Description updated (diff)

#2 Updated by okurz over 3 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

#3 Updated by okurz over 3 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

#4 Updated by okurz over 3 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

#5 Updated by mgriessmeier over 3 years ago

  • Due date changed from 2018-06-05 to 2018-06-19

#6 Updated by mgriessmeier over 3 years ago

  • Due date deleted (2018-06-19)

#7 Updated by okurz over 3 years ago

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

#8 Updated by okurz over 3 years ago

  • Target version changed from Milestone 17 to Milestone 17

#9 Updated by okurz over 3 years ago

  • Target version changed from Milestone 17 to Milestone 18

#10 Updated by okurz over 3 years ago

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

It's hackweek time!

#11 Updated by okurz about 3 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.

#12 Updated by okurz about 3 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.

#13 Updated by jorauch about 3 years ago

  • Assignee set to jorauch

#14 Updated by jorauch about 3 years ago

  • Status changed from Workable to In Progress

Actually working on this since friday.

#15 Updated by jorauch about 3 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

#16 Updated by mgriessmeier about 3 years ago

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

#17 Updated by jorauch about 3 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

#18 Updated by jorauch about 3 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

#19 Updated by okurz about 3 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.

#20 Updated by jorauch about 3 years ago

  • Related to action #39116: Add assert_still_screen functionality added

#21 Updated by jorauch about 3 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

#22 Updated by jorauch about 3 years ago

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

#23 Updated by jorauch about 3 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

#24 Updated by okurz about 3 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

#25 Updated by jorauch about 3 years ago

  • Status changed from Feedback to Resolved

PR is merged, therefore closing this ticket

Also available in: Atom PDF