Open Bug 823881 Opened 11 years ago Updated 2 years ago

Intermittent browser_layoutview.js | #element-size has the right value. - Got , expected 160x160 (and many more)

Categories

(DevTools :: Inspector, defect, P3)

x86
Windows XP
defect

Tracking

(Not tracked)

People

(Reporter: past, Unassigned)

References

Details

(Keywords: intermittent-failure, Whiteboard: [btpp-backlog][leave open][test disabled])

Attachments

(1 file)

https://tbpl.mozilla.org/php/getParsedLog.php?id=18156610&tree=Fx-Team

Rev3 WINNT 5.1 fx-team opt test mochitest-browser-chrome on 2012-12-21 01:48:16 PST for push c965fa0804cf

slave: talos-r3-xp-050

TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | #element-size has the right value. - Got , expected 160x160
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .size > span has the right value. - Got , expected 100x100
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .margin.top > span has the right value. - Got , expected 30
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .margin.left > span has the right value. - Got , expected auto
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .margin.bottom > span has the right value. - Got , expected 30
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .margin.right > span has the right value. - Got , expected auto
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .padding.top > span has the right value. - Got , expected 20
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .padding.left > span has the right value. - Got , expected 20
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .padding.bottom > span has the right value. - Got , expected 20
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .padding.right > span has the right value. - Got , expected 20
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .border.top > span has the right value. - Got , expected 10
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .border.left > span has the right value. - Got , expected 10
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .border.bottom > span has the right value. - Got , expected 10
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .border.right > span has the right value. - Got , expected 10
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | #element-size has the right value after style update. - Got , expected 190x210
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .size > span has the right value after style update. - Got , expected 100x150
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .margin.top > span has the right value after style update. - Got , expected 30
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .margin.left > span has the right value after style update. - Got , expected auto
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .margin.bottom > span has the right value after style update. - Got , expected 30
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .margin.right > span has the right value after style update. - Got , expected auto
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .padding.top > span has the right value after style update. - Got , expected 20
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .padding.left > span has the right value after style update. - Got , expected 20
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .padding.bottom > span has the right value after style update. - Got , expected 20
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .padding.right > span has the right value after style update. - Got , expected 50
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .border.top > span has the right value after style update. - Got , expected 10
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .border.left > span has the right value after style update. - Got , expected 10
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .border.bottom > span has the right value after style update. - Got , expected 10
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/layoutview/test/browser_layoutview.js | .border.right > span has the right value after style update. - Got , expected 10
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/profiler/test/browser_profiler_run.js | First percentage is 100% - Got , expected 100.0%
What happened here? Apparently, it started getting serious the 2013-10-11.
Maybe it's just my suspicious mind, but it sure seems like I star this in batches all at once across multiple trees, just like when something depends on an external resource that's sometimes down (or, alas for our infra, depends on getting a particular sort of result from a DNS lookup).
(In reply to Paul Rouget [:paul] from comment #75)
> What happened here? Apparently, it started getting serious the 2013-10-11.

Can you please look at this? This is easily our most frequent orange.
Flags: needinfo?(paul)
Assignee: nobody → paul
Flags: needinfo?(paul)
This issue is apparently being addressed in bug 926325.
Depends on: 926325
I'm not convinced this is immediately related. getFrameElement, which has been re-written lately, appears to fail as well.
Attached patch Disabling testSplinter Review
I'm not sure yet what's going on.

Disabling the test for the moment.
Attachment #819116 - Flags: review?(rcampbell)
Whiteboard: [layout view] → [leave open]
Attachment #819116 - Flags: review?(rcampbell) → review+
do we have plans to fix the test itself?
(In reply to Rob Campbell [:rc] (:robcee) from comment #232)
> do we have plans to fix the test itself?

Yes. I'll do that next week.
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/43b40be4049e
Keywords: checkin-needed
Whiteboard: [leave open] → [leave open][test disabled]
The original patch was broken. Disabled frlz.
https://hg.mozilla.org/mozilla-central/rev/3daff401c7ab
Bug 923166 has landed when failures really started.
Whiteboard: [leave open][test disabled] → [leave open]
Whiteboard: [leave open] → [leave open][test disabled]
The following error: 

> TypeError: this.markup is undefined:
> InspectorPanel_onNewRoot/</<@resource://gre/modules/commonjs/toolkit/loader.
> js -> resource:///modules/devtools/inspector/inspector-panel.js:321

has been fixed in bug 926325.
This was only an unrelated js error being triggered while a test was passing.

It does not explain why test browser_layoutview.js intermittently fails.
I can see 2 potential problems:

1 - The test assertions are intermittently failing (although I haven't been able to reproduce that problem locally, it may be that the try server is under stress and processing things slower than locally).

The test asserts that the layout view sizes are correctly updated after a change of height and margin is done to the test content element.
In order to assert the new sizes, the test waits for the layout view's `layoutview-updated` event.
By simply introducing a timeout, I was able to see that actually many `layoutview-updated` events are fired, not just one.
So my take on this is that when assertions fail, it must be that the `layoutview-updated` event that was used is too early and height and margin changes haven't yet made it.

2 - The test randomly generates JS errors even when passing.

If my assumptions are correct for 1, then this is the same thing.
Indeed, since the test uses the first `layoutview-updated` event to assert and then end the test, there are still many of these events to come later, and each of them trigger a call (via the protocol) to the server to get the boundingrect information for a given node which, at some point, does not exist anymore since the test ended. Hence, the JS errors.
Flags: needinfo?(paul)
Flags: needinfo?(paul)
`layoutview-updated` events are also emitted out of sync sometimes because we are relying on MozAfterPaint. This will be far more reliable when the reflow actor is complete.
Assignee: paul → nobody
Triaging (filter on CLIMBING SHOES).
Priority: -- → P3
Whiteboard: [leave open][test disabled] → [btpp-backlog][leave open][test disabled]
Product: Firefox → DevTools
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: