# TestComponent

# TestComponent

```
interface TestComponent : Component
```

|----------------------------------------------------------------------------------------------------------------------------------------------------------|
| [com.android.build.api.variant.TestComponent](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/TestComponent#) |

|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Known Direct Subclasses [AndroidTest](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/AndroidTest),[TestComponent](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/component/TestComponent.html#),[UnitTest](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/UnitTest) |-----------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------| | [AndroidTest](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/AndroidTest)             | Properties for the android test Variant of a module. | | [TestComponent](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/component/TestComponent.html#) | <br />                                               | | [UnitTest](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/UnitTest)                   | <br />                                               | |

|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Known Indirect Subclasses [AndroidTest](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/component/AndroidTest.html#),[AndroidTest](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/component/AndroidTest.html#),[UnitTest](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/component/UnitTest.html#)[UnitTest](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/component/UnitTest.html#) |-------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------| | [AndroidTest](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/component/AndroidTest.html#) | <br />                                            | | [AndroidTest](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/component/AndroidTest.html#) | <br />                                            | | [UnitTest](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/component/UnitTest.html#)       | Properties for the unit test variant of a module. | | [UnitTest](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/component/UnitTest.html#)       | Properties for the unit test variant of a module. | |

## Summary

| ### Inherited functions ||
|---|---|
| From class[Component](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/Component) |------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [setAsmFramesComputationMode](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/Component#setAsmFramesComputationMode(com.android.build.api.instrumentation.FramesComputationMode))`(`mode:` `[FramesComputationMode](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/instrumentation/FramesComputationMode.html#)`)` <br /> Sets the frame computation mode that will be applied to the bytecode of the classes instrumented by ASM visitors registered through[transformClassesWith](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/Component#transformClassesWith(java.lang.Class,%20com.android.build.api.instrumentation.InstrumentationScope,%20kotlin.Function1)). The default mode is to[copy frames](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/instrumentation/FramesComputationMode.html#ENUM_VALUE:COPY_FRAMES). When setting this multiple times, the mode with the highest enum value will be selected. <br />                                                                                                                                                                                                                                                                                                                                                             | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [transformClassesWith](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/Component#transformClassesWith(java.lang.Class,%20com.android.build.api.instrumentation.InstrumentationScope,%20kotlin.Function1))`(`classVisitorFactoryImplClass:` `[Class](http://docs.oracle.com/javase/8/docs/api/java/lang/Class.html)<out` `[AsmClassVisitorFactory](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/instrumentation/AsmClassVisitorFactory.html#)<ParamT>>`, `scope:` `[InstrumentationScope](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/instrumentation/InstrumentationScope.html#)`, `instrumentationParamsConfig:` `(ParamT)` `->` `[Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`)` <br /> Registers an asm class visitor to instrument the classes defined by the given scope. An instance of the factory will be instantiated and used to create visitors for each class. Example: ```scdoc androidComponentsExtension.onVariants(selector().all(), { transformClassesWith(AsmClassVisitorFactoryImpl.class, InstrumentationScope.Project) { params -> params.x = "value" } setAsmFramesComputationMode(COMPUTE_FRAMES_FOR_INSTRUMENTED_METHODS) }) ``` This API is experimental and subject to breaking change and we strongly suggest you don't publish plugins that depend on it yet. <br /> | ||

| ### Inherited properties ||
|---|---|
| From class[Component](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/Component) |--------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [Artifacts](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/artifact/Artifacts.html#) | [artifacts](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/Component#artifacts:com.android.build.api.artifact.Artifacts) <br /> Access to the variant's buildable artifacts for build customization. <br /> | ||
| From class[ComponentIdentity](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/ComponentIdentity) |----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?                                                                                                                                                                                                                                                            | [buildType](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/ComponentIdentity#buildType:kotlin.String) <br /> Build type name, might be replaced with access to locked DSL object once ready. <br />                                                                                                                                                                                                                                    | | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?                                                                                                                                                                                                                                                            | [flavorName](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/ComponentIdentity#flavorName:kotlin.String) <br /> The multi-flavor name of the variant. This does not include the build type. If no flavors are present, this will return null The full name of the variant is queried via[name](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/ComponentIdentity#name:kotlin.String). <br /> | | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)                                                                                                                                                                                                                                                             | [name](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/ComponentIdentity#name:kotlin.String) <br /> Component's name. <br />                                                                                                                                                                                                                                                                                                            | | [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[Pair](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html),` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>> | [productFlavors](https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/ComponentIdentity#productFlavors:kotlin.collections.List) <br /> List of flavor names, might be replaced with access to locked DSL objects once ready. The order is properly sorted based on the associated dimension order. <br />                                                                                                                                    | ||