Skip to content

Releases: sergio-sastre/AndroidUiTestingUtils

2.2.0

23 Jan 19:27
ead0ea4
Compare
Choose a tag to compare

CrossLibrary-Screenshot tests

  • Support for Pseudolocales with all libraries, including Paparazzi!
    Important: It requires paparazzi 1.3.2, so ensure to use the workaround mentioned in Paparazzi 1.3.2 release notes

:android-testify

  • Added ScreenshotRuleWithConfigurationForFragment for easier Fragment screenshot tests

Other Important updates:

  • Requires Kotlin 1.9.x and Compose Compiler 1.5.x
  • Requires compile SDK 34

2.1.1-alpha02

16 Jan 22:14
Compare
Choose a tag to compare
2.1.1-alpha02 Pre-release
Pre-release
  • Migrate from AGP 7.4 to AGP 8.1.1
  • Cross-Library Screenshot tests support for Pseudolocales
    • required update Paparazzi from 1.3.1 to 1.3.2

Important NOTES:
Requires compileSDK 34
and likely...

  • at least AGP 8.1.1 (not tested on other versions)
  • Compose Kotlin Compiler 1.5.0 (not tested with other versions)
  • Kotlin 1.9.0 (not tested with other versions)
  • The workaround mentioned in Paparazzi 1.3.2 release notes

2.1.1-alpha01

07 Jan 18:05
Compare
Choose a tag to compare
2.1.1-alpha01 Pre-release
Pre-release

This release contains no new features, only some maintenance work: AGP and JDK updates

  • AGP 7.4.0
  • JDK 17

2.1.0

08 Dec 19:37
bcf3f98
Compare
Choose a tag to compare

Cross-Library Screenshot Tests updates:

  • Android-Testify support, which supports screenshot testing with Gradle Managed Devices
  • Update Roborazzi to 1.8.0-alpha-6 & added ComparisonStyle.Grid support

Others

  • Add DisableAnimationsTestRule

2.0.1

23 Oct 16:08
6137094
Compare
Choose a tag to compare
  1. Add support for Robolectric/Roborazzi tests to under multiple devices and configs
companion object {
   @JvmStatic
   @ParameterizedRobolectricTestRunner.Parameters
   fun testItemProvider(): Array<TestDataForComposable<MyEnum>> =
      TestDataForComposableCombinator(
         uiStates = MyEnum.values()
      )
         .forDevices(
            PIXEL_4A,
            MEDIUM_TABLET,
         )
         .forConfigs(
            ComposableConfigItem(uiMode = DAY),
            ComposableConfigItem(uiMode = NIGHT),
         )
         .combineAll()
}
  1. Easier Roborazzi tests with RobolectricActivityScenarioForComposable()
    with com.github.sergio-sastre.AndroidUiTestingUtils:roborazzi:2.0.1 dependency:
robolectricActivityScenarioForComposableRule.captureRoboImage(
   filePath("CoffeeDrinkListComposable_${testItem.screenshotId}")
) {
   AppTheme {
      CoffeeDrinkList(coffeeDrink = testItem.uiState.drink)
   }
}
  1. Cross-Library screenshot tests with Roborazzi use 1.7.0-rc-1 under the hood
  2. More Robolectric devices to use with RobolectricActivityScenarios
  • Desktops: small, medium and large desktop
  • Tablets: medium tablet
  • Phones: small and medium phone

2.0.0

11 Sep 15:08
07975b6
Compare
Choose a tag to compare

This version comes with out-of-the box support for Cross-library screenshot tests for:

  • Paparazzi 1.3.1
  • Roborazzi 1.5.0-rc-1
  • Shot 6.0.0
  • Dropshots 0.4.1

Updates:

  • Dropshots to 0.4.1
  • Roborazzi to 1.5.0-rc-1

Fix:

  • Handle cross-library screenshot test without screenshot name

2.0.0-rc1

15 Aug 15:28
c509fb0
Compare
Choose a tag to compare

Focus on Cross-library screenshot tests:
✅ Support for Android Views!
✅ Support for Accessibility (Roborazzi & Paparazzi)
📈 More library specific configurations supported
🐞 Bug fixes (Roborazzi filePath, Paparazzi environment...)

Breaking changes:
modules :sharedtest-paparazzi and sharedtest-roborazzi are renamed to :mapper-paparazzi and mapper-roborazzi respectively

Some classes have also changed their absolute paths

2.0.0-beta04

23 Jul 11:10
b370290
Compare
Choose a tag to compare

Cross-library screenshot tests

  • Support AGP 8.x
  • Fix Dropshot tests not recording/verifying
  • Fix Roborazzi tests not screenshoting Composables inside Launch Effects (e.g. Snackbar)
  • Fix Paparazzi tests with RenderingMode.SHRINK & Orientation.LANDSCAPE, width & height were not properly set

New features

  • View.drawFullScrollableToBitmap(config: Bitmap.Config = Bitmap.Config.ARGB_8888)
    It draws a full scrollable view to Bitmap, even though it goes beyond the activity window.
    Works with all:
    1. On-device screenshot testing libraries (e.g. Dropshots, Shot, etc.)
    2. Robolectric-based screenshot testing libraries (e.g. Roborazzi)

2.0.0-beta03

30 May 21:56
67ffa89
Compare
Choose a tag to compare

Focus on Cross-Library screenshot testing:

  • Support for Roborazzi
  • Support for DisplaySize & complex Locales e.g. "sr-Cyrl-RS"
  • Add more options for specific libraries (e.g. backgroundColor)

2.0.0-beta02

29 Apr 19:04
329ef4f
Compare
Choose a tag to compare
  • Adds full support for Robolectric: a perfect companion for Roborazzi screenshot tests!
  • Improves supports for "shared screenshot testing"