Espresso testing disable animation

Make sure to keep your plugin updated:

buildscript {
  repositories {
    google()
    gradlePluginPortal()
  }

  dependencies {
    classpath 'com.android.tools.build:gradle:3.3.0'
  }
}

Use the new flag in testOptions called animationsDisabled:

android {

  ...

  testOptions {
    animationsDisabled = true
  }
}

Source: https://google.github.io/android-gradle-dsl/current/com.android.build.gradle.internal.dsl.TestOptions.html#com.android.build.gradle.internal.dsl.TestOptions:animationsDisabled

You can try turning off animations on your device/emulator manually:

To avoid flakiness, we highly recommend that you turn off system
animations on the virtual or physical devices used for testing. On
your device, under Settings > Developer options, disable the following
3 settings:

Window animation scale Transition animation scale Animator duration
scale

Source: https://developer.android.com/training/testing/espresso/setup#set-up-environment

You can try using adb via command line:

# Turn off animations
adb shell settings put global window_animation_scale 0 &
adb shell settings put global transition_animation_scale 0 &
adb shell settings put global animator_duration_scale 0 &

Source: https://github.com/jaredsburrows/android-gif-example/blob/master/.travis.yml#L34

You can try LinkedIn’s TestButler:

TestButler.verifyAnimationsDisabled(InstrumentationRegistry.getTargetContext());

Source: https://github.com/linkedin/test-butler/blob/master/test-butler-demo/src/androidTest/java/com/linkedin/android/testbutler/demo/AnimationDisablerTest.java#L26

You can try creating a TestRule and Gradle task for your espresso tests:

Source: https://product.reverb.com/disabling-animations-in-espresso-for-android-testing-de17f7cf236f

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)