我试图在我的Android项目中使用JaCoCo增加代码覆盖率,我发现我可以忽略带有/不带正则表达式的整个类。
我遵循MVP模式,所以首先我忽略了所有**/view/**
但是,例如,我有帮助,它们的方法如下:
companion object {
fun fromHtml(html: String): Spanned {
return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
Html.fromHtml(html, Html.FROM_HTML_MODE_LEGACY)
} else {
@Suppress("DEPRECATION")
Html.fromHtml(html)
}
}
fun hideKeyboard(activity: Activity) {
try {
val inputManager = activity.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
inputManager.hideSoftInputFromWindow(activity.currentFocus!!.windowToken, InputMethodManager.HIDE_NOT_ALWAYS)
} catch (e: Exception) {
Timber.w(e)
}
}
}
显然我可以使用JUnit测试fromHtml
,但要测试hideKeyboard(Activity)
我需要Activity
,或者更好地说,通过检测测试运行它。
我有没有办法生成JaCoCo报告,而忽略了签名中包含View
,Activity
,Context
等的方法?