plugins { id("com.android.test") kotlin("android") } android { namespace = "tachiyomi.macrobenchmark" compileSdk = AndroidConfig.compileSdk compileOptions { sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = JavaVersion.VERSION_1_8.toString() } defaultConfig { minSdk = AndroidConfig.minSdk targetSdk = AndroidConfig.targetSdk testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } buildTypes { // This benchmark buildType is used for benchmarking, and should function like your // release build (for example, with minification on). It's signed with a debug key // for easy local/CI testing. create("benchmark") { isDebuggable = true signingConfig = getByName("debug").signingConfig matchingFallbacks += listOf("release") } } targetProjectPath = ":app" experimentalProperties["android.experimental.self-instrumenting"] = true } dependencies { implementation(androidx.test.ext) implementation(androidx.test.espresso.core) implementation(androidx.test.uiautomator) implementation(androidx.benchmark.macro) } androidComponents { beforeVariants(selector().all()) { it.enable = it.buildType == "benchmark" } }