仪器测试需要很长时间才能完成

时间:2019-03-04 22:28:58

标签: android android-context android-junit androidjunitrunner

我有一个使用上下文获取字符串资源的简单对象:

object ProfileHelper {

    @JvmStatic
    fun getNewProfileName(context: Context): String {
        val prefix = context.getString(R.string.profile_created_on).trim()
        val date = Calendar.getInstance().time
        val formattedDate = SimpleDateFormat("d MMM yy H:mm:ss", Locale.US).format(date) // e.g. 1 Feb 19 18:00:00
        return "$prefix $formattedDate"
    }
}

我想测试此方法而不模拟上下文。这是我的测试工具:

@RunWith(AndroidJUnit4::class)
class ProfileHelperTest {

    @Test
    fun testGetNewProfileName() {
        val profileName = ProfileHelper.getNewProfileName(InstrumentationRegistry.getTargetContext())
        assertNotNull(profileName)
    }
}

测试通过,但此后继续运行10-20秒。我是在做错什么,还是要花很长时间才能正常终止进程?

万一重要,这是我build.gradle中的相关行:

android {
    defaultConfig {
        testInstrumentationRunner 'android.support.test.runner.AndroidJUnitRunner'
    }
}

dependencies {
    implementation 'junit:junit:4.12'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support:support-annotations:28.0.0'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
}

0 个答案:

没有答案