Closed Bug 1002234 Opened 10 years ago Closed 9 years ago

Intermittent testLoad | Exception caught - java.lang.NullPointerException at at android.view.ViewGroup.findViewTraversal

Categories

(Firefox for Android Graveyard :: General, defect)

ARM
Android
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: RyanVM, Unassigned)

References

Details

(Keywords: intermittent-failure)

https://tbpl.mozilla.org/php/getParsedLog.php?id=38575276&tree=Mozilla-Inbound

Android 4.0 Panda mozilla-inbound opt test robocop-3 on 2014-04-26 20:22:16 PDT for push 93a71ca8b150
slave: panda-0235

20:43:10     INFO -  0 INFO SimpleTest START
20:43:10     INFO -  1 INFO TEST-START | testLoad
20:43:10     INFO -  2 INFO TEST-PASS | testLoad | Given message occurred for registered event: {"type":"Gecko:Ready"} - Gecko:Ready should equal Gecko:Ready
20:43:10     INFO -  EventExpecter: no longer listening for Gecko:Ready
20:43:10     INFO -  Exception caught during test!
20:43:10     INFO -  java.lang.NullPointerException
20:43:10     INFO -  	at android.view.ViewGroup.findViewTraversal(ViewGroup.java:3070)
20:43:10     INFO -  	at android.view.View.findViewById(View.java:12247)
20:43:10     INFO -  	at android.view.ViewGroup.findViewTraversal(ViewGroup.java:3071)
20:43:10     INFO -  	at android.widget.ListView.findViewTraversal(ListView.java:3435)
20:43:10     INFO -  	at android.view.View.findViewById(View.java:12247)
20:43:10     INFO -  	at android.view.ViewGroup.findViewTraversal(ViewGroup.java:3071)
20:43:10     INFO -  	at android.view.View.findViewById(View.java:12247)
20:43:10     INFO -  	at android.view.ViewGroup.findViewTraversal(ViewGroup.java:3071)
20:43:10     INFO -  	at android.view.View.findViewById(View.java:12247)
20:43:10     INFO -  	at android.view.ViewGroup.findViewTraversal(ViewGroup.java:3071)
20:43:10     INFO -  	at android.view.View.findViewById(View.java:12247)
20:43:10     INFO -  	at android.view.ViewGroup.findViewTraversal(ViewGroup.java:3071)
20:43:10     INFO -  	at android.view.View.findViewById(View.java:12247)
20:43:10     INFO -  	at android.view.ViewGroup.findViewTraversal(ViewGroup.java:3071)
20:43:10     INFO -  	at android.view.View.findViewById(View.java:12247)
20:43:10     INFO -  	at android.view.ViewGroup.findViewTraversal(ViewGroup.java:3071)
20:43:10     INFO -  	at android.view.View.findViewById(View.java:12247)
20:43:10     INFO -  	at android.view.ViewGroup.findViewTraversal(ViewGroup.java:3071)
20:43:10     INFO -  	at android.view.View.findViewById(View.java:12247)
20:43:10     INFO -  	at android.view.ViewGroup.findViewTraversal(ViewGroup.java:3071)
20:43:10     INFO -  	at android.view.View.findViewById(View.java:12247)
20:43:10     INFO -  	at android.view.ViewGroup.findViewTraversal(ViewGroup.java:3071)
20:43:10     INFO -  	at android.view.View.findViewById(View.java:12247)
20:43:10     INFO -  	at android.view.Window.findViewById(Window.java:901)
20:43:10     INFO -  	at android.app.Activity.findViewById(Activity.java:1794)
20:43:10     INFO -  	at com.jayway.android.robotium.solo.Getter.getView(Getter.java:118)
20:43:10     INFO -  	at com.jayway.android.robotium.solo.Getter.getView(Getter.java:137)
20:43:10     INFO -  	at com.jayway.android.robotium.solo.Solo.getView(Solo.java:1982)
20:43:10     INFO -  	at com.jayway.android.robotium.solo.Solo.getView(Solo.java:1970)
20:43:10     INFO -  	at org.mozilla.gecko.tests.BaseTest$1.isSatisfied(BaseTest.java:174)
20:43:10     INFO -  	at com.jayway.android.robotium.solo.Waiter.waitForCondition(Waiter.java:370)
20:43:10     INFO -  	at com.jayway.android.robotium.solo.Solo.waitForCondition(Solo.java:426)
20:43:10     INFO -  	at org.mozilla.gecko.tests.BaseTest.waitForCondition(BaseTest.java:279)
20:43:10     INFO -  	at org.mozilla.gecko.tests.BaseTest.focusUrlBar(BaseTest.java:171)
20:43:10     INFO -  	at org.mozilla.gecko.tests.BaseTest.enterUrl(BaseTest.java:188)
20:43:10     INFO -  	at org.mozilla.gecko.tests.BaseTest.inputAndLoadUrl(BaseTest.java:219)
20:43:10     INFO -  	at org.mozilla.gecko.tests.PixelTest.loadAndGetPainted(PixelTest.java:11)
20:43:10     INFO -  	at org.mozilla.gecko.tests.PixelTest.loadAndVerifyBoxes(PixelTest.java:123)
20:43:10     INFO -  	at org.mozilla.gecko.tests.testLoad.testLoad(testLoad.java:15)
20:43:10     INFO -  	at java.lang.reflect.Method.invokeNative(Native Method)
20:43:10     INFO -  	at java.lang.reflect.Method.invoke(Method.java:511)
20:43:10     INFO -  	at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:214)
20:43:10     INFO -  	at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:199)
20:43:10     INFO -  	at android.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:192)
20:43:10     INFO -  	at org.mozilla.gecko.tests.BaseTest.runTest(BaseTest.java:125)
20:43:10     INFO -  	at junit.framework.TestCase.runBare(TestCase.java:127)
20:43:10     INFO -  	at junit.framework.TestResult$1.protect(TestResult.java:106)
20:43:10     INFO -  	at junit.framework.TestResult.runProtected(TestResult.java:124)
20:43:10     INFO -  	at junit.framework.TestResult.run(TestResult.java:109)
20:43:10     INFO -  	at junit.framework.TestCase.run(TestCase.java:118)
20:43:10     INFO -  	at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:169)
20:43:10     INFO -  	at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:154)
20:43:10     INFO -  	at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:545)
20:43:10     INFO -  	at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1551)
20:43:10     INFO -  3 INFO TEST-UNEXPECTED-FAIL | testLoad | Exception caught - java.lang.NullPointerException
20:43:10     INFO -  4 INFO TEST-END | testLoad | finished in 6333ms
20:43:10     INFO -  5 INFO TEST-START | Shutdown
20:43:10     INFO -  6 INFO Passed: 1
20:43:10  WARNING -  7 INFO Failed: 1
20:43:10  WARNING -  One or more unittests failed.
20:43:10     INFO -  8 INFO Todo: 0
20:43:10     INFO -  9 INFO SimpleTest FINISHED
I think this is a Robotium/Android issue, and a dupe of bug 998001 (see bug 998001 comment 3 for an expanded explanation).

However, I think the exception is a bit too general to actually dupe it until the issue is fixed.
See Also: → 998001
Recent fix to logging gives us more information here:

09:51:09     INFO -  0 ERROR Exception caught during test! - java.lang.NullPointerException
09:51:09     INFO -  	at org.mozilla.gecko.FennecNativeActions$PaintExpecter.<init>(FennecNativeActions.java:225)
09:51:09     INFO -  	at org.mozilla.gecko.FennecNativeActions.expectPaint(FennecNativeActions.java:334)
09:51:09     INFO -  	at org.mozilla.gecko.tests.PixelTest.loadAndGetPainted(PixelTest.java:10)
09:51:09     INFO -  	at org.mozilla.gecko.tests.PixelTest.loadAndVerifyBoxes(PixelTest.java:123)
09:51:09     INFO -  	at org.mozilla.gecko.tests.testLoad.testLoad(testLoad.java:15)
09:51:09     INFO -  	at java.lang.reflect.Method.invokeNative(Native Method)
09:51:09     INFO -  	at java.lang.reflect.Method.invoke(Method.java:511)
09:51:09     INFO -  	at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:214)
09:51:09     INFO -  	at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:199)
09:51:09     INFO -  	at android.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:192)
09:51:09     INFO -  	at org.mozilla.gecko.tests.BaseTest.runTest(BaseTest.java:163)
09:51:09     INFO -  	at junit.framework.TestCase.runBare(TestCase.java:134)
09:51:09     INFO -  	at junit.framework.TestResult$1.protect(TestResult.java:115)
09:51:09     INFO -  	at junit.framework.TestResult.runProtected(TestResult.java:133)
09:51:09     INFO -  	at junit.framework.TestResult.run(TestResult.java:118)
09:51:09     INFO -  	at junit.framework.TestCase.run(TestCase.java:124)
09:51:09     INFO -  	at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:190)
09:51:09     INFO -  	at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:175)
09:51:09     INFO -  	at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:555)
09:51:09     INFO -  	at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1661)
09:51:09     INFO -  

So GeckoAppShell.getLayerView() returned null?
The LayerView is assigned in GeckoAppShell.setLayerView which is eventually called from GeckoApp.initialize(), which is called from GeckoApp.onWindowFocusChanged() - sounds like bug 1085591.
Depends on: 1085591
The stack is a little different in recent failures:

08:47:44     INFO -  0 ERROR Exception caught during test! - java.lang.NullPointerException
08:47:44     INFO -  	at org.mozilla.gecko.gfx.LayerView.addDrawListener(LayerView.java:602)
08:47:44     INFO -  	at org.mozilla.gecko.FennecNativeActions$PaintExpecter.<init>(FennecNativeActions.java:225)
08:47:44     INFO -  	at org.mozilla.gecko.FennecNativeActions.expectPaint(FennecNativeActions.java:334)
08:47:44     INFO -  	at org.mozilla.gecko.tests.PixelTest.loadAndGetPainted(PixelTest.java:14)
08:47:44     INFO -  	at org.mozilla.gecko.tests.PixelTest.loadAndVerifyBoxes(PixelTest.java:126)
08:47:44     INFO -  	at org.mozilla.gecko.tests.testLoad.testLoad(testLoad.java:19)
(In reply to TBPL Robot from comment #94)

> TEST-UNEXPECTED-FAIL | testLoad | Exception caught -
> java.lang.NullPointerException

Not the same bug:

10:15:58 INFO - 0 ERROR Exception caught during test! - java.lang.NullPointerException 

10:15:58 INFO - at org.mozilla.gecko.gfx.LayerView.addDrawListener(LayerView.java:602) 

10:15:58 INFO - at org.mozilla.gecko.FennecNativeActions$PaintExpecter.<init>(FennecNativeActions.java:225) 

10:15:58 INFO - at org.mozilla.gecko.FennecNativeActions.expectPaint(FennecNativeActions.java:334) 

10:15:58 INFO - at org.mozilla.gecko.tests.PixelTest.loadAndGetPainted(PixelTest.java:14) 

10:15:58 INFO - at org.mozilla.gecko.tests.PixelTest.loadAndVerifyBoxes(PixelTest.java:126) 

10:15:58 INFO - at org.mozilla.gecko.tests.testLoad.testLoad(testLoad.java:19)
Filed Bug 1125539 for the layer-related bug.
See Also: → 1125539
Summary: Intermittent testLoad | Exception caught - java.lang.NullPointerException → Intermittent testLoad | Exception caught - java.lang.NullPointerException at at android.view.ViewGroup.findViewTraversal
Inactive; closing (see bug 1180138).
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WORKSFORME
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.