mock firebase身份验证

wn9m85ua  于 2021-06-27  发布在  Java
关注(0)|答案(0)|浏览(214)

我在用 FirebaseAuth 在我的java项目中,我想做一些测试。我不想测试firebase类本身(显然我认为),而是一个实现firebase方法调用的服务类。
所以代码是这样的:

@Service
public class MyServiceImpl implements MyService

  public MyServiceImpl() {}

  public void deleteUser(String uid){
    // do something
    FirebaseAuth.getInstance().deleteUser(uid); // <-- I want to mock this call
  }

所以我正在运行junit测试,在那里我模拟dao方法调用 MyServiceImpl.java 使用 @Spy . 但我不知道怎么嘲笑 FirebaseAuth 示例及其方法。
我试过:

@Test
public void mockFirebase(){
  FirebaseAuth auth mockFirebase = Mockito.mock(FirebaseAuth.class);
  Mockito.when(mockFirebase.getInstance()).thenReturn(/* null ?? */);
}

但它尝试连接firebase,我想,因为我删除了所有配置,以避免连接和测试失败在第一行的结果。
名为[默认值]的firebaseapp不存在。
我也读过一些关于mockito与firestore或firebasedatabase结合使用的问题,但对firebaseauth没有。
在这一点上我不知道如何嘲笑 delete() 方法,如果我必须使用 @Spy (比如dao层)或者我必须模拟firebaseauth类或者其他什么。
提前谢谢。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题