注入Context对象以创建FirebaseAnalytic实例|的Mockito

时间:2017-12-08 12:16:27

标签: android google-analytics mockito android-context firebase-analytics

我正在为应用程序中编写的Firebase Analytics(FBA)事件编写测试用例。在其中一种情况下,我需要检查FBA对象是否可用。我正在使用Mockito创建上下文:

第一种方法

angular.min.1.5.8.js

调用只是传递上下文并初始化FBA对象:

   @Mock lateinit var mockContext: Context

    @Test
    fun validateAnalyticsObjectAvailableSuccess() {
        Analytics.with(context)
    }

但是我正在使用Null指针异常跟踪错误日志:

  

java.lang.NullPointerException:null reference

     

在com.google.android.gms.common.internal.zzbq.checkNotNull(未知   来源)com.google.android.gms.internal.zzchj.zzdu(未知来源)     在   com.google.firebase.analytics.FirebaseAnalytics.getInstance(未知   源)

第二种方法中,我以这种方式创建上下文对象:

fun with(context: Context) {
        FirebaseAnalytics.getInstance(context)
    }

然后将此上下文对象与 Analytics.with(context)一起使用,但结果相同。任何建议,如果这不是生成的上下文对象的行为?

请注意,在这两种情况下,上下文对象都不为空,但是一旦我将其用于其他目的,例如context.resource它返回null。

0 个答案:

没有答案