如何从Jacoco报告中排除所有Jetpack Compose的预览函数?

6
当我们运行Jetpack Compose函数的Jacoco代码覆盖率时,我希望排除所有预览功能。可以使用以下方法实现:
@Retention(AnnotationRetention.RUNTIME)
@Target(AnnotationTarget.FUNCTION)
internal annotation class ExcludeFromJacocoGeneratedReport

那么对于我想要从报告中排除的函数,我会使用注释进行标记:

@ExcludeFromJacocoGeneratedReport
@Preview(
    name = "Name"
)
@Composable
private fun MyComposePreview() {
    // ... function content
}

这个方法可行。但我必须添加注释到所有的预览函数中。 我希望能在build.gradle文件中排除它们,以免重复。

有没有办法可以实现这个目的呢?

1个回答

1

Preview的文档说明它可以应用于:

注解类,然后可以用来注释@Composable方法或其他注解类,这些注解类将被视为间接地带有该预览的注解。

因此,我认为您可以创建一个名为“PreviewExludedFromJacoco”的注解,并使用Preview进行注释。虽然这不完全是您要求的内容,但它可以让您每个预览函数只有一个注解。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接