TestVariant

@Incubating interface TestVariant : Variant

Variant for test-only modules.

Summary

Public methods

abstract Unit
aaptOptions(action: AaptOptions.() -> Unit)

Variant's aaptOptions, initialized by the corresponding global DSL element.

abstract Unit

Variant's packagingOptions, initialized by the corresponding global DSL element.

Inherited functions

Unit addBuildConfigField(key: String, value: Serializable, comment: String?)

Convenience method to add a new Build Config field which value is known at configuration time.

Unit addResValue(name: String, type: String, value: String, comment: String?)

Adds a ResValue element to the generated resources.

Unit addResValue(name: String, type: String, value: Provider<String>, comment: String?)

Adds a ResValue element to the generated resources.

Unit setAsmFramesComputationMode(mode: FramesComputationMode)

Sets the frame computation mode that will be applied to the bytecode of the classes instrumented by ASM visitors registered through transformClassesWith. The default mode is to copy frames.

When setting this multiple times, the mode with the highest enum value will be selected.

Unit transformClassesWith(classVisitorFactoryImplClass: Class<out AsmClassVisitorFactory<ParamT>>, scope: InstrumentationScope, instrumentationParamsConfig: (ParamT) -> Unit)

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:

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.

Properties

abstract AaptOptions

Variant's aaptOptions, initialized by the corresponding global DSL element.

abstract Property<String>

Variant's application ID as present in the final manifest file of the APK.

abstract Property<Boolean>

The functionalTest value to use to run the tests.

abstract Property<Boolean>

The handleProfiling value to use to run the tests.

abstract Property<String>

The instrumentationRunner to use to run the tests.

abstract ApkPackagingOptions

Variant's packagingOptions, initialized by the corresponding global DSL element.

abstract Property<String?>

the test label

abstract Provider<String>

The application of the app under tests.

Inherited properties

Artifacts artifacts

Access to the variant's buildable artifacts for build customization.

MapProperty<String, BuildConfigField<out Serializable>> buildConfigFields

Variant's BuildConfigField which will be generated in the BuildConfig class.

MapProperty<String, String> manifestPlaceholders

MapProperty of the variant's manifest placeholders.

Placeholders are organized with a key and a value. The value is a String that will be used as is in the merged manifest.

Provider<String> packageName

The package name into which some classes are generated

String? buildType

Build type name, might be replaced with access to locked DSL object once ready.

String flavorName

The multi-flavor name of the variant.

This does not include the build type. If no flavors are present, this is an empty string.

The full name of the variant is queried via getName.

List<Pair<String, String>> productFlavors

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.

Public methods

aaptOptions

abstract fun aaptOptions(action: AaptOptions.() -> Unit): Unit

Variant's aaptOptions, initialized by the corresponding global DSL element.

packagingOptions

abstract fun packagingOptions(action: ApkPackagingOptions.() -> Unit): Unit

Variant's packagingOptions, initialized by the corresponding global DSL element.

Properties

aaptOptions

abstract val aaptOptions: AaptOptions

Variant's aaptOptions, initialized by the corresponding global DSL element.

applicationId

abstract val applicationId: Property<String>

Variant's application ID as present in the final manifest file of the APK.

functionalTest

abstract val functionalTest: Property<Boolean>

The functionalTest value to use to run the tests.

handleProfiling

abstract val handleProfiling: Property<Boolean>

The handleProfiling value to use to run the tests.

instrumentationRunner

abstract val instrumentationRunner: Property<String>

The instrumentationRunner to use to run the tests.

packagingOptions

abstract val packagingOptions: ApkPackagingOptions

Variant's packagingOptions, initialized by the corresponding global DSL element.

testLabel

abstract val testLabel: Property<String?>

the test label

testedApplicationId

abstract val testedApplicationId: Provider<String>

The application of the app under tests.