测试使用父级底部导航视图的片段 activity
Testing a fragment that uses bottom navigation view of a parent activity
我正在尝试对某些使用来自 MainActivity 的共享底部导航视图的片段进行隔离测试 UI,这些片段基本上用于导航和上下滚动,但我的测试基本上因 nullpointerException 而失败因为在片段布局中找不到底部导航视图中的按钮。
我的问题是如何将这些属于 mainactivity 的布局传递给 fragmentTest class.
FragmentScenario
是错误的方法,因为 Fragment
甚至不应该依赖于父级 Activity
(如果依赖,请始终检查 instanceof
或 is
,Activity
它实际附加到哪一个)。最好用 ActivityTestRule
代替父 Activity
,因为 FragmentScenario
使用它自己的模拟 Activity
,所以你永远不会得到预期的一个父 Activity
(这是故意的,为了排除对父 Activity
的严格依赖)。只需在您当前的测试代码中设置一个断点,以查看没有 BottomNavigationView
存在,因为它还没有被膨胀。
还有一个新的 ActivityScenario
(目前仍处于测试阶段)。
我正在尝试对某些使用来自 MainActivity 的共享底部导航视图的片段进行隔离测试 UI,这些片段基本上用于导航和上下滚动,但我的测试基本上因 nullpointerException 而失败因为在片段布局中找不到底部导航视图中的按钮。 我的问题是如何将这些属于 mainactivity 的布局传递给 fragmentTest class.
FragmentScenario
是错误的方法,因为 Fragment
甚至不应该依赖于父级 Activity
(如果依赖,请始终检查 instanceof
或 is
,Activity
它实际附加到哪一个)。最好用 ActivityTestRule
代替父 Activity
,因为 FragmentScenario
使用它自己的模拟 Activity
,所以你永远不会得到预期的一个父 Activity
(这是故意的,为了排除对父 Activity
的严格依赖)。只需在您当前的测试代码中设置一个断点,以查看没有 BottomNavigationView
存在,因为它还没有被膨胀。
还有一个新的 ActivityScenario
(目前仍处于测试阶段)。