Bug #11398

Florence sometimes hides other windows, which breaks tests

Added by bertagaz 2016-05-05 07:23:43 . Updated 2016-06-08 01:26:45 .

Status:
Resolved
Priority:
Elevated
Assignee:
Category:
Test suite
Target version:
Start date:
2016-05-05
Due date:
% Done:

100%

Feature Branch:
test/11398-florence-hides-other-windows
Type of work:
Code
Blueprint:

Starter:
0
Affected tool:
Deliverable for:
270

Description

Two scenarios are failing from time to time because the Florence keyboard is on top of the window where the test suite expects to see results:

cucumber features/root_access_control.feature:25 # Scenario: If no administrative password is set in Tails Greeter the live user \
  should not be able to get administrative privileges through PolicyKit with the standard passwords.
cucumber features/evince.feature:24 # Scenario: I cannot view a PDF file stored in non-persistent /home/amnesia/.gnupg

In this case, another scenario is also failing:

cucumber features/encryption.feature:32 # Scenario: Symmetric encryption and decryption using OpenPGP Applet

This scenarios are using snapshots, so it might be that this one is taken a bit too soon, and the Florence keyboard hasn’t really finished to initialize and is still opened on the desktop.

It happened recently in Jenkins runs test_Tails_ISO_feature-11123-new-mirror-pool #2, test_Tails_ISO_stable #196 and test_Tails_ISO_stable #243

See attached screenshots.


Files


Subtasks


Related issues

Related to Tails - Bug #11464: "all notifications have disappeared" step is fragile when network is unplugged Resolved 2016-05-23
Blocks Tails - Bug #10497: wait_until_tor_is_working helper is fragile Resolved 2015-11-06

History

#1 Updated by bertagaz 2016-05-05 07:33:02

  • Feature Branch set to test/11398-florence-hides-other-windows

#2 Updated by intrigeri 2016-05-21 11:20:47

  • Subject changed from Florence sometimes hides other windows to Florence sometimes hides other windows, which breaks tests

I’ve seen it happen again in the last few days, e.g. https://jenkins.tails.boum.org/job/test_Tails_ISO_test-10497-tor-bootstrap-is-fragile/17/. Given that this can basically affect all tests, we can’t mark them all as fragile, so IMO this will need to be prioritized quite high, and may block Feature #11355.

This problem might boil down to “hide-on-start=true sometimes fails”, i.e. a bug in Florence itself (not found any reported in the Debian or upstream BTS). But I bet this will be hard to debug, and we have other reasons (Bug #8312, that blocks Bug #8309, that is most plausible way of fixing Bug #10576 some day) to get rid of Florence, so IMO a test suite -specific workaround would be good enough, i.e.: if Florence is still visible after a short while, hide it ourselves.

Thoughts?

#3 Updated by bertagaz 2016-05-21 11:37:27

I’ve seen that too while compiling Jenkins stats. I think I mentioned it in the email I’ve sent on the @-ci list. I’m wondering if this happen on scenarios that are using snapshots, and when this one are made a bit too fast, while Florence is still visible, then it is interfering.

#4 Updated by intrigeri 2016-05-21 12:30:16

> I’ve seen that too while compiling Jenkins stats.

… and indeed, you created this ticket :)

> I’m wondering if this happen on scenarios that are using snapshots, and when this one are made a bit too fast, while Florence is still visible, then it is interfering.

Regardless of when the snapshot is taken and restored, at some point Florence’s code to hide itself should run, no? It looks like the logical consequence of what you’re suggesting is that this code may not work if run after restoring a snapshot. I don’t see why this would be the case, but whatever, I don’t mind following your lead :) What kind of solution would you suggest, following up on this tentative explanation?

#5 Updated by intrigeri 2016-05-21 21:07:28

  • Priority changed from Normal to Elevated

FTR, all recent test failures I’ve seen while running tests on 4 branches intensively were caused either by this problem, or by Bug #11401 => bumping priority.

#6 Updated by intrigeri 2016-05-22 10:26:39

  • Status changed from Confirmed to In Progress
  • Assignee set to intrigeri
  • Target version set to Tails_2.4

Giving it a try.

#7 Updated by intrigeri 2016-05-22 10:59:27

  • % Done changed from 0 to 10

I’ve pushed something, will merge it into Bug #10497 and subtasks so I see how it works on Jenkins, on the N branches I’m monitoring closely there these days.

I’d welcome an initial very quick code review, to benefit from anonym’s expertise, but don’t feel pressured: this can totally wait post-2.4~rc1, and perhaps even post-2.4.

#8 Updated by intrigeri 2016-05-22 10:59:55

  • blocks Bug #10497: wait_until_tor_is_working helper is fragile added

#9 Updated by intrigeri 2016-05-23 15:41:55

  • related to Bug #11464: "all notifications have disappeared" step is fragile when network is unplugged added

#10 Updated by intrigeri 2016-05-27 12:29:57

  • Assignee changed from intrigeri to anonym
  • % Done changed from 10 to 50
  • QA Check set to Ready for QA

Seems pretty robust now!

#11 Updated by anonym 2016-06-01 19:56:22

  • Status changed from In Progress to Fix committed
  • Assignee deleted (anonym)
  • % Done changed from 50 to 100
  • QA Check changed from Ready for QA to Pass

#12 Updated by anonym 2016-06-08 01:26:45

  • Status changed from Fix committed to Resolved