reference-browser icon indicating copy to clipboard operation
reference-browser copied to clipboard

Intermittent UI test failure - < CustomTabsTest. verifyCustomTabMenuItemsTest >

Open AndiAJ opened this issue 4 years ago • 0 comments

Firebase Test Run: Firebase link

Stacktrace:

androidx.test.espresso.AmbiguousViewMatcherException: 'with text: is "Share"' matches multiple views in the hierarchy. Problem views are marked with 'MATCHES' below.

View Hierarchy: +>PopupDecorView{id=-1, visibility=VISIBLE, width=741, height=756, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params={(981,1021)(wrapxwrap) gr=TOP START CENTER DISPLAY_CLIP_VERTICAL sim={state=unchanged} ty=APPLICATION_PANEL fmt=TRANSLUCENT wanim=0x7f120101 surfaceInsets=Rect(0, 0 - 0, 0) (manual) fl=SPLIT_TOUCH HARDWARE_ACCELERATED FLAG_LAYOUT_ATTACHED_IN_DECOR pfl=WILL_NOT_REPLACE_ON_RELAUNCH LAYOUT_CHILD_WINDOW_IN_PARENT_FRAME}, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=1} | +->MenuView{id=-1, visibility=VISIBLE, width=741, height=756, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.widget.FrameLayout$LayoutParams@b282732, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=1} | +-->CardView{id=2131296585, res-name=mozac_browser_menu_cardView, visibility=VISIBLE, width=741, height=756, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=android.widget.FrameLayout$LayoutParams@eb61c83, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=1} | +--->RecyclerView{id=2131296587, res-name=mozac_browser_menu_recyclerView, visibility=VISIBLE, width=689, height=682, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.widget.FrameLayout$LayoutParams@a9a9639, tag=null, root-is-layout-requested=false, has-input-connection=false, x=26.0, y=37.0, child-count=9} | +---->LinearLayout{id=-1, visibility=VISIBLE, width=689, height=154, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=androidx.recyclerview.widget.RecyclerView$LayoutParams@6ad847e, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=3} | +----->AppCompatImageButton{id=-1, desc=Forward, visibility=VISIBLE, width=229, height=154, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.widget.LinearLayout$LayoutParams@db3fddf, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0} | +----->AppCompatImageButton{id=-1, desc=Refresh, visibility=VISIBLE, width=230, height=154, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.widget.LinearLayout$LayoutParams@6773a2c, tag=null, root-is-layout-requested=false, has-input-connection=false, x=229.0, y=0.0} | +----->AppCompatImageButton{id=-1, desc=Stop, visibility=VISIBLE, width=230, height=154, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.widget.LinearLayout$LayoutParams@e855cf5, tag=null, root-is-layout-requested=false, has-input-connection=false, x=459.0, y=0.0} | +---->ConstraintLayout{id=-1, visibility=VISIBLE, width=689, height=132, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=androidx.recyclerview.widget.RecyclerView$LayoutParams@b996a8a, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=154.0, child-count=1} | +----->AppCompatTextView{id=2131296541, res-name=label, visibility=VISIBLE, width=601, height=59, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=androidx.constraintlayout.widget.ConstraintLayout$LayoutParams@f8498fb, tag=null, root-is-layout-requested=false, has-input-connection=false, x=44.0, y=37.0, text=Share, input-type=0, ime-target=false, has-links=false} MATCHES | +---->ConstraintLayout{id=-1, visibility=VISIBLE, width=689, height=132, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=androidx.recyclerview.widget.RecyclerView$LayoutParams@f33cd18, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=286.0, child-count=1} | +----->SwitchCompat{id=2131296541, res-name=label, visibility=VISIBLE, width=601, height=132, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=androidx.constraintlayout.widget.ConstraintLayout$LayoutParams@a1bd371, tag=null, root-is-layout-requested=false, has-input-connection=false, x=44.0, y=0.0, text=Request desktop site, input-type=0, ime-target=false, has-links=false, is-checked=false} | +---->ConstraintLayout{id=-1, visibility=VISIBLE, width=689, height=132, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=androidx.recyclerview.widget.RecyclerView$LayoutParams@5f9c9d7, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=418.0, child-count=1} | +----->AppCompatTextView{id=2131296541, res-name=label, visibility=VISIBLE, width=601, height=59, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=androidx.constraintlayout.widget.ConstraintLayout$LayoutParams@a24a2c4, tag=null, root-is-layout-requested=false, has-input-connection=false, x=44.0, y=37.0, text=Find in Page, input-type=0, ime-target=false, has-links=false} | +---->ConstraintLayout{id=-1, visibility=VISIBLE, width=689, height=132, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=androidx.recyclerview.widget.RecyclerView$LayoutParams@2c935ad, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=550.0, child-count=1} | +----->AppCompatTextView{id=2131296541, res-name=label, visibility=VISIBLE, width=601, height=59, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=androidx.constraintlayout.widget.ConstraintLayout$LayoutParams@ed4c0e2, tag=null, root-is-layout-requested=false, has-input-connection=false, x=44.0, y=37.0, text=Open in Browser, input-type=0, ime-target=false, has-links=false} | +---->ConstraintLayout{id=-1, visibility=VISIBLE, width=689, height=132, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=androidx.recyclerview.widget.RecyclerView$LayoutParams@82b2730, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=550.0, child-count=1} | +----->AppCompatTextView{id=2131296541, res-name=label, visibility=VISIBLE, width=601, height=59, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=androidx.constraintlayout.widget.ConstraintLayout$LayoutParams@f707fa9, tag=null, root-is-layout-requested=false, has-input-connection=false, x=44.0, y=37.0, text=Open in Browser, input-type=0, ime-target=false, has-links=false} | +---->ConstraintLayout{id=-1, visibility=VISIBLE, width=689, height=132, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=androidx.recyclerview.widget.RecyclerView$LayoutParams@be1ccf, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=286.0, child-count=1} | +----->SwitchCompat{id=2131296541, res-name=label, visibility=VISIBLE, width=601, height=132, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=androidx.constraintlayout.widget.ConstraintLayout$LayoutParams@4d3865c, tag=null, root-is-layout-requested=false, has-input-connection=false, x=44.0, y=0.0, text=Request desktop site, input-type=0, ime-target=false, has-links=false, is-checked=false} | +---->ConstraintLayout{id=-1, visibility=VISIBLE, width=689, height=132, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=androidx.recyclerview.widget.RecyclerView$LayoutParams@8286d65, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=154.0, child-count=1} | +----->AppCompatTextView{id=2131296541, res-name=label, visibility=VISIBLE, width=601, height=59, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=androidx.constraintlayout.widget.ConstraintLayout$LayoutParams@ba98a3a, tag=null, root-is-layout-requested=false, has-input-connection=false, x=44.0, y=37.0, text=Share, input-type=0, ime-target=false, has-links=false} MATCHES | +---->LinearLayout{id=-1, visibility=VISIBLE, width=689, height=154, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=false, is-layout-requested=false, is-selected=false, layout-params=androidx.recyclerview.widget.RecyclerView$LayoutParams@1961006, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=3} | +----->AppCompatImageButton{id=-1, desc=Forward, visibility=VISIBLE, width=229, height=154, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.widget.LinearLayout$LayoutParams@6ad6c7, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0} | +----->AppCompatImageButton{id=-1, desc=Refresh, visibility=VISIBLE, width=230, height=154, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.widget.LinearLayout$LayoutParams@fd844f4, tag=null, root-is-layout-requested=false, has-input-connection=false, x=229.0, y=0.0} | +----->AppCompatImageButton{id=-1, desc=Stop, visibility=VISIBLE, width=230, height=154, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, layout-params=android.widget.LinearLayout$LayoutParams@ccfe41d, tag=null, root-is-layout-requested=false, has-input-connection=false, x=459.0, y=0.0} | at dalvik.system.VMStack.getThreadStackTrace(Native Method) at java.lang.Thread.getStackTrace(Thread.java:1720) at androidx.test.espresso.base.DefaultFailureHandler.getUserFriendlyError(DefaultFailureHandler.java:88) at androidx.test.espresso.base.DefaultFailureHandler.handle(DefaultFailureHandler.java:51) at androidx.test.espresso.ViewInteraction.waitForAndHandleInteractionResults(ViewInteraction.java:312) at androidx.test.espresso.ViewInteraction.check(ViewInteraction.java:297) at org.mozilla.reference.browser.ui.robots.CustomTabRobotKt.assertShareButton(CustomTabRobot.kt:161) at org.mozilla.reference.browser.ui.robots.CustomTabRobotKt.access$assertShareButton(CustomTabRobot.kt:1) at org.mozilla.reference.browser.ui.robots.CustomTabRobot.verifyShareButton(CustomTabRobot.kt:38) at org.mozilla.reference.browser.ui.CustomTabsTest$verifyCustomTabMenuItemsTest$2.invoke(CustomTabsTest.kt:77) at org.mozilla.reference.browser.ui.CustomTabsTest$verifyCustomTabMenuItemsTest$2.invoke(CustomTabsTest.kt:73) at org.mozilla.reference.browser.ui.robots.CustomTabRobot$Transition.openMainMenu(CustomTabRobot.kt:88) at org.mozilla.reference.browser.ui.CustomTabsTest.verifyCustomTabMenuItemsTest(CustomTabsTest.kt:73) at java.lang.reflect.Method.invoke(Native Method) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at androidx.test.internal.runner.junit4.statement.RunBefores.evaluate(RunBefores.java:80) at androidx.test.internal.runner.junit4.statement.RunAfters.evaluate(RunAfters.java:61) at androidx.test.rule.ActivityTestRule$ActivityStatement.evaluate(ActivityTestRule.java:527) at androidx.test.rule.ActivityTestRule$ActivityStatement.evaluate(ActivityTestRule.java:527) at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306) at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63) at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329) at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293) at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306) at org.junit.runners.ParentRunner.run(ParentRunner.java:413) at org.junit.runners.Suite.runChild(Suite.java:128) at org.junit.runners.Suite.runChild(Suite.java:27) at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329) at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293) at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306) at org.junit.runners.ParentRunner.run(ParentRunner.java:413) at org.junit.runner.JUnitCore.run(JUnitCore.java:137) at org.junit.runner.JUnitCore.run(JUnitCore.java:115) at androidx.test.internal.runner.TestExecutor.execute(TestExecutor.java:56) at androidx.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:388) at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:2189)

Build: 9/23 Main

AndiAJ avatar Sep 24 '21 11:09 AndiAJ