android - espresso 中的片段测试 - click() 上的 popbackstack
问题描述
我正在努力进行浓缩咖啡测试,我试图测试按钮点击但无法理解如何。我是 Espresso 测试的新手,已经在互联网/youtube 上进行了搜索,但找不到确切的解决方案。
这是问题所在:
onView(withId(R.id.myButton)).perform(click()).check(Navigation.findNavController(<requireView() 无法识别>).popBackStack()); 因此不知道那里会发生什么。我的目标是检查按钮单击是否执行 popBackStack。如果我的整个方法也是错误的,请告诉我,我该如何进行。
@RunWith(AndroidJUnit4.class)
public class MyTestClass {
public FragmentScenario<MyFragment> fragmentScenario;
@Before
public void setUp(){
fragmentScenario =FragmentScenario.launchInContainer(MyFragment.class);
fragmentScenario.moveToState(Lifecycle.State.STARTED);
}
@Test
public void testButton() {
onView(withId(R.id.myButton)).perform(click()).check(Navigation.findNavController(<requireView() is not recognized>).popBackStack()); hence don't know what will come there.
}
}
解决方案
推荐阅读
- c# - 具有空值的 Newtonsoft.Json.JsonConvert.DeserializeObject 问题
- openssl - 将 aws 导出的私钥转换为 pkcs12 时出错:无法加载私钥
- sql - 在同一个表中连接由分隔符分隔的列
- nginx - 使用 SSL 和其他服务器在 NGINX 后面代理 COTURN
- javascript - vue prop 始终是子组件中的默认值
- go - 防止Golang后台进程CPU占用过多
- python-3.x - Pygame eroor Rect 论证无效
- python - 无法导入所需数量的推文 GetOldTweets3
- javascript - build.xml 中的 java 脚本:替换方法
- javascript - Vue.js 使用两个路由器