mozilla-mobile / fenix

⚠️ Fenix (Firefox for Android) moved to a new repository. It is now developed and maintained as part of: https://github.com/mozilla-mobile/firefox-android
https://github.com/mozilla-mobile/firefox-android
Mozilla Public License 2.0
6.48k stars 1.27k forks source link

Intermittent UI test failure - <TabbedBrowsingTest.closePrivateTabTest> #15624

Closed isabelrios closed 2 years ago

isabelrios commented 3 years ago

Seen on 10/2nd, flaky 1/2 failure

Firebase Test Run:

Provide a Firebase test run report link here showcasing the problem https://console.firebase.google.com/project/moz-fenix/testlab/histories/bh.66b7091e15d53d45/matrices/7113370922062241196/executions/bs.e67401803c0163a0/test-cases

Stacktrace:

https://console.firebase.google.com/project/moz-fenix/testlab/histories/bh.66b7091e15d53d45/matrices/7113370922062241196/executions/bs.e67401803c0163a0/testcases/2/test-cases

┆Issue is synchronized with this Jira Task

sv-ohorvath commented 3 years ago

Failed 1/2, on 11/7: https://console.firebase.google.com/u/0/project/moz-fenix/testlab/histories/bh.66b7091e15d53d45/matrices/5058800555193127077/executions/bs.98a0dd5d0d24266a/testcases/2/test-cases

isabelrios commented 3 years ago

Flaky (1/2) 11/13: https://console.firebase.google.com/project/moz-fenix/testlab/histories/bh.66b7091e15d53d45/matrices/8484178373882639050/executions/bs.904fa660716c0ba3/test-cases

sv-ohorvath commented 3 years ago

Hasn't failed since Nov. Closing it and will reopen if it appears again.

AndiAJ commented 3 years ago

• Debug 3/15

► Flaky 1x closePrivateTabTest

Firebase link

java.lang.AssertionError
at org.junit.Assert.fail(Assert.java:87)
at org.junit.Assert.assertTrue(Assert.java:42)
at org.junit.Assert.assertNotNull(Assert.java:713)
at org.junit.Assert.assertNotNull(Assert.java:723)
at org.mozilla.fenix.helpers.ext.WaitNotNullKt.waitNotNull(WaitNotNull.kt:20)
at org.mozilla.fenix.ui.robots.TabDrawerRobot.verifySnackBarText(TabDrawerRobot.kt:136)
at org.mozilla.fenix.ui.TabbedBrowsingTest$closePrivateTabTest$8.invoke(TabbedBrowsingTest.kt:209)
at org.mozilla.fenix.ui.TabbedBrowsingTest$closePrivateTabTest$8.invoke(TabbedBrowsingTest.kt:40)
at org.mozilla.fenix.ui.robots.BrowserRobot$Transition.openTabDrawer(BrowserRobot.kt:439)
at org.mozilla.fenix.ui.TabbedBrowsingTest.closePriv
AndiAJ commented 3 years ago

Flaky 1x on Master 7/1: Firebase link

sv-ohorvath commented 3 years ago

Flaky on Master 7/7: link

grigoryk commented 2 years ago

Just hit this myself - https://console.firebase.google.com/u/0/project/moz-fenix/testlab/histories/bh.66b7091e15d53d45/matrices/8997165907483583570/executions/bs.dcd6a2ba07fc03cd/testcases/1/test-cases

AndiAJ commented 2 years ago

Flaky 1x on 8/23 Main Firebase link

sv-ohorvath commented 2 years ago

Flaky on Main 8/25: https://console.firebase.google.com/project/moz-fenix/testlab/histories/bh.66b7091e15d53d45/matrices/7123714749007016775/executions/bs.1a11162a8b441006/testcases/1/test-cases

Same as #20354, #20479, #20296, #17484 which I couldn't reproduce or find an explanation for. Still looking.

`androidx.test.espresso.AmbiguousViewMatcherException: '(with id: org.mozilla.fenix.debug:id/mozac_browser_tabstray_close and with content description text: is "Close tab Test_Page_1")' matches multiple views in the hierarchy. Problem views are marked with 'MATCHES' below. View Hierarchy: +>DecorView{id=-1, visibility=VISIBLE, width=1080, height=1920, 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={(0,0)(fillxfill) gr=CENTER sim={adjust=pan} ty=APPLICATION fmt=TRANSPARENT wanim=0x7f140009 fl=DIM_BEHIND LAYOUT_IN_SCREEN SECURE LAYOUT_INSET_DECOR HARDWARE_ACCELERATED DRAWS_SYSTEM_BAR_BACKGROUNDS pfl=FORCE_DRAW_STATUS_BAR_BACKGROUND vsysui=LIGHT_NAVIGATION_BAR}, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=2} +->LinearLayout{id=-1, visibility=VISIBLE, width=1080, height=1788, 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@162192e, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=2}
+-->ViewStub{id=16908682, res-name=action_mode_bar_stub, visibility=GONE, width=0, height=0, 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=true, is-selected=false, layout-params=android.widget.LinearLayout$LayoutParams@204eccf, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0} +-->FrameLayout{id=16908290, res-name=content, visibility=VISIBLE, width=1080, height=1722, 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.LinearLayout$LayoutParams@35a165c, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=66.0, child-count=1}
+--->CoordinatorLayout{id=2131363023, res-name=tabLayout, visibility=VISIBLE, width=1080, height=1722, 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.FrameLayout$LayoutParams@753bd65, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=2} +---->ConstraintLayout{id=2131363040, res-name=tab_wrapper, visibility=VISIBLE, width=1080, height=1722, 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.coordinatorlayout.widget.CoordinatorLayout$LayoutParams@9bba6c7, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=607.0, child-count=12}
+----->View{id=2131362408, res-name=handle, visibility=VISIBLE, width=108, height=8, 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@6a0d4f4, tag=null, root-is-layout-requested=false, has-input-connection=false, x=486.0, y=22.0} +----->ConstraintLayout{id=2131362455, res-name=info_banner, visibility=GONE, width=0, height=0, 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=true, is-selected=false, layout-params=androidx.constraintlayout.widget.ConstraintLayout$LayoutParams@c15341d, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=0}
+----->View{id=2131363111, res-name=topBar, visibility=VISIBLE, width=1080, height=221, 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@6563692, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=30.0} +----->AppCompatImageButton{id=2131362351, res-name=exit_multi_select, desc=Exit multiselect mode, visibility=GONE, width=0, height=0, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=true, is-selected=false, layout-params=androidx.constraintlayout.widget.ConstraintLayout$LayoutParams@e41e863, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0}
+----->AppCompatTextView{id=2131362672, res-name=multiselect_title, visibility=GONE, width=1047, height=70, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=false, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=true, is-selected=false, layout-params=androidx.constraintlayout.widget.ConstraintLayout$LayoutParams@6704c60, tag=null, root-is-layout-requested=false, has-input-connection=false, x=33.0, y=106.0, text=, input-type=0, ime-target=false, has-links=false} +----->AppCompatImageButton{id=2131362169, res-name=collect_multi_select, desc=Save selected tabs to collection, visibility=GONE, width=0, height=0, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=true, is-selected=false, layout-params=androidx.constraintlayout.widget.ConstraintLayout$LayoutParams@755f519, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0}
+----->AppCompatImageButton{id=2131362930, res-name=share_multi_select, desc=Share selected tabs, visibility=GONE, width=0, height=0, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=true, is-selected=false, layout-params=androidx.constraintlayout.widget.ConstraintLayout$LayoutParams@a9d29de, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0} +----->AppCompatImageButton{id=2131362565, res-name=menu_multi_select, desc=Selected tabs menu, visibility=GONE, width=0, height=0, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=true, is-selected=false, layout-params=androidx.constraintlayout.widget.ConstraintLayout$LayoutParams@760a7bf, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0}
+----->TabLayout{id=2131363029, res-name=tab_layout, visibility=VISIBLE, width=540, height=221, 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=androidx.constraintlayout.widget.ConstraintLayout$LayoutParams@3fdce8c, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=30.0, child-count=1} +------>SlidingTabIndicator{id=-1, visibility=VISIBLE, width=540, height=221, 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@447c9d5, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=3}
+------->TabView{id=-1, desc=Open tabs, visibility=VISIBLE, width=180, height=221, 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@2ff4778, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=3} +-------->AppCompatImageView{id=-1, visibility=GONE, width=0, height=0, 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=true, is-selected=false, layout-params=android.widget.LinearLayout$LayoutParams@d482e51, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0}
+-------->AppCompatTextView{id=-1, visibility=GONE, width=0, height=0, 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=true, is-selected=false, layout-params=android.widget.LinearLayout$LayoutParams@97e96b6, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, text=, input-type=0, ime-target=false, has-links=false} +-------->FrameLayout{id=2131362201, res-name=counter_root, visibility=VISIBLE, width=114, height=66, 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=android.widget.LinearLayout$LayoutParams@395cfb7, tag=null, root-is-layout-requested=false, has-input-connection=false, x=33.0, y=77.0, child-count=1}
+--------->TabCounter{id=2131363027, res-name=tab_counter, visibility=VISIBLE, width=114, height=66, 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=android.widget.FrameLayout$LayoutParams@a9d6324, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=1} +---------->FrameLayout{id=2131362201, res-name=counter_root, desc=0 open tabs. Tap to switch tabs., visibility=VISIBLE, width=66, height=66, 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=android.widget.RelativeLayout$LayoutParams@b105e8d, tag=null, root-is-layout-requested=false, has-input-connection=false, x=24.0, y=0.0, child-count=2}
+----------->AppCompatImageView{id=2131362200, res-name=counter_box, desc=The tab counter toolbar button., visibility=VISIBLE, width=66, height=66, 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=android.widget.FrameLayout$LayoutParams@d56842, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0} +----------->AppCompatTextView{id=2131362202, res-name=counter_text, visibility=VISIBLE, width=19, height=44, 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=android.widget.FrameLayout$LayoutParams@5adb053, tag=null, root-is-layout-requested=false, has-input-connection=false, x=23.0, y=10.0, text=0, input-type=0, ime-target=false, has-links=false}
+------->TabView{id=-1, desc=Private tabs, visibility=VISIBLE, width=180, height=221, 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=true, layout-params=android.widget.LinearLayout$LayoutParams@eb15689, tag=null, root-is-layout-requested=false, has-input-connection=false, x=180.0, y=0.0, child-count=2} +-------->AppCompatImageView{id=-1, visibility=VISIBLE, width=66, height=66, 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=true, layout-params=android.widget.LinearLayout$LayoutParams@d5c68e, tag=null, root-is-layout-requested=false, has-input-connection=false, x=57.0, y=77.0}
+-------->AppCompatTextView{id=-1, visibility=GONE, width=0, height=0, 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=true, is-selected=true, layout-params=android.widget.LinearLayout$LayoutParams@d58feaf, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, text=, input-type=0, ime-target=false, has-links=false} +------->TabView{id=-1, desc=Synced tabs, visibility=VISIBLE, width=180, height=221, 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@f4fd245, tag=null, root-is-layout-requested=false, has-input-connection=false, x=360.0, y=0.0, child-count=2}
+-------->AppCompatImageView{id=-1, visibility=VISIBLE, width=66, height=66, 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=android.widget.LinearLayout$LayoutParams@d6bbd9a, tag=null, root-is-layout-requested=false, has-input-connection=false, x=57.0, y=77.0} +-------->AppCompatTextView{id=-1, visibility=GONE, width=0, height=0, 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=true, is-selected=false, layout-params=android.widget.LinearLayout$LayoutParams@9c0d6cb, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, text=, input-type=0, ime-target=false, has-links=false}
+----->AppCompatImageButton{id=2131363037, res-name=tab_tray_overflow, desc=Open tabs menu, visibility=VISIBLE, width=132, 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@48f7ea8, tag=null, root-is-layout-requested=false, has-input-connection=false, x=948.0, y=75.0} +----->View{id=2131362293, res-name=divider, visibility=VISIBLE, width=1080, height=3, 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@7a04dc1, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=251.0}
+----->ViewPager2{id=2131363042, res-name=tabsTray, visibility=VISIBLE, width=1080, height=1468, 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.constraintlayout.widget.ConstraintLayout$LayoutParams@b381966, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=254.0, child-count=1} +------>RecyclerViewImpl{id=2, visibility=VISIBLE, width=1080, height=1468, 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.view.ViewGroup$LayoutParams@98414a7, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=1}
+------->FrameLayout{id=-1, visibility=VISIBLE, width=1080, height=1468, 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@bb1dd54, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=2} +-------->PrivateBrowserTrayList{id=2131363141, res-name=tray_list_item, visibility=VISIBLE, width=1080, height=1468, 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@f2304fd, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=2}
+--------->FrameLayout{id=2131363036, res-name=tab_tray_grid_item, visibility=VISIBLE, width=540, height=557, 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.GridLayoutManager$LayoutParams@c535443, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=2} +---------->MaterialCardView{id=-1, visibility=VISIBLE, width=496, height=513, 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@1f97ac0, tag=null, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=22.0, is-checked=false, child-count=1}
+----------->ConstraintLayout{id=2131363028, res-name=tab_item, visibility=VISIBLE, width=496, height=513, 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@b1ff3f9, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=5} +------------>AppCompatImageView{id=2131362603, res-name=mozac_browser_tabstray_favicon_icon, visibility=VISIBLE, width=44, height=44, 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@486ef3e, tag=null, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=20.0}
+------------>AppCompatTextView{id=2131362606, res-name=mozac_browser_tabstray_title, visibility=VISIBLE, width=364, height=83, 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@24cf19f, tag=null, root-is-layout-requested=false, has-input-connection=false, x=66.0, y=0.0, text=Test_Page_1, input-type=0, ime-target=false, has-links=false} +------------>AppCompatImageButton{id=2131362602, res-name=mozac_browser_tabstray_close, desc=Close tab Test_Page_1, visibility=VISIBLE, width=66, height=66, 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@c5b82ec, tag=null, root-is-layout-requested=false, has-input-connection=false, x=430.0, y=9.0} MATCHES
+------------>View{id=2131362435, res-name=horizonatal_divider, visibility=VISIBLE, width=496, height=3, 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@362d6b5, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=83.0} +------------>CardView{id=2131362601, res-name=mozac_browser_tabstray_card, visibility=VISIBLE, width=496, height=430, 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@51908bb, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=86.0, child-count=3}
+------------->AppCompatImageView{id=2131362246, res-name=default_tab_thumbnail, visibility=VISIBLE, width=496, height=430, 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=android.widget.FrameLayout$LayoutParams@7f3e1d8, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0} +------------->TabThumbnailView{id=2131362605, res-name=mozac_browser_tabstray_thumbnail, desc=Open Tab, visibility=VISIBLE, width=496, height=430, 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=android.widget.FrameLayout$LayoutParams@6b72931, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0}
+------------->FrameLayout{id=2131362140, res-name=checkbox_include, visibility=GONE, width=0, height=0, 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=true, is-selected=false, layout-params=android.widget.FrameLayout$LayoutParams@6c57597, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=1} +-------------->AppCompatImageView{id=2131362142, res-name=checkmark, desc=Selected, visibility=VISIBLE, width=0, height=0, 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=true, is-selected=false, layout-params=android.widget.FrameLayout$LayoutParams@5b14384, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0}
+---------->AppCompatImageButton{id=2131362768, res-name=play_pause_button, desc=Pause, visibility=GONE, width=0, height=0, has-focus=false, has-focusable=false, has-window-focus=true, is-clickable=true, is-enabled=false, is-focused=false, is-focusable=true, is-layout-requested=true, is-selected=false, layout-params=android.widget.FrameLayout$LayoutParams@b24276d, tag=null, root-is-layout-requested=false, has-input-connection=false, x=-22.050001, y=-22.050001} +--------->FrameLayout{id=2131363036, res-name=tab_tray_grid_item, visibility=VISIBLE, width=540, height=557, 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.GridLayoutManager$LayoutParams@261d433, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=2}
+---------->MaterialCardView{id=-1, visibility=VISIBLE, width=496, height=513, 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@4c113f0, tag=null, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=22.0, is-checked=false, child-count=1} +----------->ConstraintLayout{id=2131363028, res-name=tab_item, visibility=VISIBLE, width=496, height=513, 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@5e8cd69, tag=null, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, child-count=5}
+------------>AppCompatImageView{id=2131362603, res-name=mozac_browser_tabstray_favicon_icon, visibility=VISIBLE, width=44, height=44, 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@aeba3ee, tag=null, root-is-layout-requested=false, has-input-connection=false, x=22.0, y=20.0} +------------>AppCompatTextView{id=2131362606, res-name=mozac_browser_tabstray_title, visibility=VISIBLE, width=364, height=83, 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@a5b808f, tag=null, root-is-layout-requested=false, has-input-connection=false, x=66.0, y=0.0, text=Test_Page_1, input-type=0, ime-target=false, has-links=false}

+------------>AppCompatImageButton{id=2131362602, res-name=mozac_browser_tabstray_close, desc=Close tab Test_Page_1, visibility=VISIBLE, width=66, height=66, 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@7bb7f1c, tag=null, root-is-layout-requested=false, has-input-connection=false, x=430.0, y=9.0} MATCHES`

AndiAJ commented 2 years ago

Flaky 1x on 9/13 Main Firebase link

AndiAJ commented 2 years ago

Flaky 1x 9/19 Firebase link

AndiAJ commented 2 years ago

Flaky 1x on 9/30 Main Firebase link

sv-ohorvath commented 2 years ago

Flaky on Main 8/25: https://console.firebase.google.com/project/moz-fenix/testlab/histories/bh.66b7091e15d53d45/matrices/7123714749007016775/executions/bs.1a11162a8b441006/testcases/1/test-cases

Same as #20354, #20479, #20296, #17484 which I couldn't reproduce or find an explanation for. Still looking.

`androidx.test.espresso.AmbiguousViewMatcherException: '(with id: org.mozilla.fenix.debug:id/mozac_browser_tabstray_close and with content description text: is "Close tab Test_Page_1")' matches multiple views in the hierarchy.

This issue appears to be related to multiple tests (duplicate tabs title, close button or tab item): https://github.com/mozilla-mobile/fenix/issues?q=is%3Aissue+is%3Aopen+androidx.test.espresso.AmbiguousViewMatcherException%3A

sv-ohorvath commented 2 years ago

Flaky on 10/1: logs

AndiAJ commented 2 years ago

Flaky on 10/1 Firebase link

AndiAJ commented 2 years ago

Flaky 1x on 10/03 Main Firebase link

AndiAJ commented 2 years ago

Flaky 1x on 10/4 Main Firebase link

sv-ohorvath commented 2 years ago

Flaky on 10/5: logs

Stacktrace: java.lang.AssertionError at org.junit.Assert.fail(Assert.java:87) at org.junit.Assert.assertTrue(Assert.java:42) at org.junit.Assert.assertNotNull(Assert.java:713) at org.junit.Assert.assertNotNull(Assert.java:723) at org.mozilla.fenix.helpers.ext.WaitNotNullKt.waitNotNull(WaitNotNull.kt:20) at org.mozilla.fenix.helpers.ext.WaitNotNullKt.waitNotNull$default(WaitNotNull.kt:17) at org.mozilla.fenix.ui.robots.BrowserRobot$Transition.openTabDrawer(BrowserRobot.kt:500) at org.mozilla.fenix.ui.TabbedBrowsingTest.closePrivateTabTest(TabbedBrowsingTest.kt:201)

sv-ohorvath commented 2 years ago

Flaky on 10/5: logs

Stacktrace: java.lang.AssertionError at org.junit.Assert.fail(Assert.java:87) at org.junit.Assert.assertTrue(Assert.java:42) at org.junit.Assert.assertNotNull(Assert.java:713) at org.junit.Assert.assertNotNull(Assert.java:723) at org.mozilla.fenix.helpers.ext.WaitNotNullKt.waitNotNull(WaitNotNull.kt:20) at org.mozilla.fenix.helpers.ext.WaitNotNullKt.waitNotNull$default(WaitNotNull.kt:17) at org.mozilla.fenix.ui.robots.BrowserRobot$Transition.openTabDrawer(BrowserRobot.kt:500) at org.mozilla.fenix.ui.TabbedBrowsingTest.closePrivateTabTest(TabbedBrowsingTest.kt:201)

In this case, from the video, it looks like the webpage is not displayed after undoing the close tab action from L195. => the tab drawer selector is different on the homescreen, that's why it fails.

A similar thing happens in the video log from https://github.com/mozilla-mobile/fenix/issues/21711 -- the page is not displayed after entering the URL in the navbar, the app still shows the homescreen. I can't reproduce this manually yet.

AndiAJ commented 2 years ago

Fixed the AmbiguousViewMatcherException in #21704

AndiAJ commented 2 years ago

Flaky 2x on 10/14 Main

Firebase link Firebase link

java.lang.AssertionError
at org.junit.Assert.fail(Assert.java:87)
at org.junit.Assert.assertTrue(Assert.java:42)
at org.junit.Assert.assertNotNull(Assert.java:713)
at org.junit.Assert.assertNotNull(Assert.java:723)
at org.mozilla.fenix.helpers.ext.WaitNotNullKt.waitNotNull(WaitNotNull.kt:20)
at org.mozilla.fenix.helpers.ext.WaitNotNullKt.waitNotNull$default(WaitNotNull.kt:17)
at org.mozilla.fenix.ui.robots.BrowserRobot$Transition.openTabDrawer(BrowserRobot.kt:500)
at org.mozilla.fenix.ui.TabbedBrowsingTest.closePrivateTabTest(TabbedBrowsingTest.kt:220)
at java.lang.reflect.Method.invoke(Native Method)
sv-ohorvath commented 2 years ago

• Debug 3/15

► Flaky 1x closePrivateTabTest

Firebase link

java.lang.AssertionError
at org.junit.Assert.fail(Assert.java:87)
at org.junit.Assert.assertTrue(Assert.java:42)
at org.junit.Assert.assertNotNull(Assert.java:713)
at org.junit.Assert.assertNotNull(Assert.java:723)
at org.mozilla.fenix.helpers.ext.WaitNotNullKt.waitNotNull(WaitNotNull.kt:20)
at org.mozilla.fenix.ui.robots.TabDrawerRobot.verifySnackBarText(TabDrawerRobot.kt:136)
at org.mozilla.fenix.ui.TabbedBrowsingTest$closePrivateTabTest$8.invoke(TabbedBrowsingTest.kt:209)
at org.mozilla.fenix.ui.TabbedBrowsingTest$closePrivateTabTest$8.invoke(TabbedBrowsingTest.kt:40)
at org.mozilla.fenix.ui.robots.BrowserRobot$Transition.openTabDrawer(BrowserRobot.kt:439)
at org.mozilla.fenix.ui.TabbedBrowsingTest.closePriv

In this case it looks like there was an actual bug: https://github.com/mozilla-mobile/fenix/issues/19256. Probably fixed since this error didn't appear in a long time. Will open a new issue if it resurfaces.

sv-ohorvath commented 2 years ago

Flaky on 10/25: logs at org.mozilla.fenix.ui.robots.BrowserRobot$Transition.openTabDrawer(BrowserRobot.kt:527)