Skip to content

Releases: MarathonLabs/marathon

0.6.3

26 Aug 03:36
59763d7
Compare
Choose a tag to compare

Features:

  • support testing multiple applications in one run on Android (#523)
  • fragmentation filter. This test filter is similar to sharded test execution that AOSP provides and facilitates testing via multiple build runs (#520)
  • add snapcraft.yaml, developer mode only for now (#534)
  • test filtering revamp: add FQTN filter and values list, support reading values from file for most of the filters (#519)
  • Support for ANDROID_SDK_ROOT (#518)

Bug fixes:

  • add afterTestRun hook to fix tests on devices that do not produce test run termination events (#524)
  • incomplete tests should fail the result aggregation (#535)
  • parameterized test merge should add expected tests to progress reporter (#538)
  • cut long class names for report files (#528)
  • Fixed test variant message (#529)

Other:

  • fix IntelliJ Run Configurations (#521)
  • Update dependencies + remove jCenter usage (#517, #527)
  • add docs section on run configurations and custom build (#522)
  • update kotlin-allure docs with relativeResultsDirectory (#515)

0.6.2

06 Jun 04:55
2bbd6e0
Compare
Choose a tag to compare

Breaking changes:
Due to differences in AOSP implementations, external storage mount can be different on devices (e.g. /sdcard or /storage). Because of this configuration for allure report has been reworked to use relative paths instead of absolute paths.

Features:

  • pulling folders after a test run (#444)
  • created annotation data filter for filtering by value in annotation (#459)
  • code coverage on Android (#466)
  • adam socketIdleTimeout config option (#463)
  • support android.support.test.filters.Suppress and android.test.suitebuilder.annotation.Suppress (#473)
  • faster IO with adam (#498)
  • test retry artifacts (#499)
  • uncompleted test batch recording if the device is responsive (#508)

Bug fixes:

  • fix screen recorder selection type (#455)
  • Annotations for MarathonRunTask (#479, #487)
  • fix remote file path on Windows for adam (#472)
  • file sync debug log should not use println (#495)
  • unify handling for testBatchTimeout and testOutputTimeout (#501)
  • always system exit (#508)
  • always close vert.x socket pool (#508)

Other:

  • Upgrade to kramdown 2.3.1, adam to 0.3.0
  • Allure from maven central (#491)
  • Migrate sample apps to Gradle 7.0 (#489)
  • Create ADOPTERS.md
  • Remove deprecated experimentalWarning Gradle KTS flag (#509)

0.6.1

13 Feb 07:17
cc84532
Compare
Choose a tag to compare

New:

  • Expose vendor-adam granular timeout configuration (#443)
  • Add failed test list + CLI report for failed and incomplete tests (#452)

Bug fixes:

  • Uncompleted tests should fail after uncompletedRetryQuota is depleted (#439)
  • Fix ddmlib test output timeout logic (#451)
  • Fix adb daemon kill after test run (#438)
  • Stabilise adam vendor (#426)
  • Rotate screen capture based on initial device rotation
  • Proper timeout handling for test (defaults to 5 minutes now) (#451)
  • Proper timeout handling for test batch (30 minutes now) (#451)
  • allure-kotlin with Android API 29 permissions fix

Other:

  • Upgrade to gradle 6.8 and kotlin 1.4.20, kluent 1.64
  • Upgrade adam to 0.2.3
  • Update ddmlib to 27.1.2 (#438)
  • Add docs clarification about simultaneous usage of testApplicationPmClear and autoGrantPermission (#435)

0.6.0

14 Dec 05:28
c4470bb
Compare
Choose a tag to compare

New:

Bug fixes:

  • Add configs for device initialization timeouts (#389)
  • Add finally block to stop koin once started (#351)
  • Allow configuring screenRecordingPolicy in gradle plugin (#361)
  • Refactor screen recording configuration (#374)
  • Bugsnag (#368, #385, #394, #415)

Deprecations:

  • Replace blacklist and whitelist with blocklist and allowlist (#407, #409)
  • ddmlib vendor is deprecated and will be disabled in 0.8.0 (#421)

Other:

  • Merged documentation into the main branch to keep everything in sync
  • Add some logs for device initialize error (#396)
  • Update kotlin-version to 1.4.10 and coroutines version 1.3.9 (#404)
  • bump gradle wrapper version to 6.6.1 (#405)

0.5.2

17 Apr 14:59
cb0ac38
Compare
Choose a tag to compare

Configuration:
Introduce ScreenRecordingPolicy
Fix SerialStrategy configuration for YAML and Gradle configuration
Explicitly specify retention policy in queries

Optimizations:
Check if batch fully ignored before clean and execution to reduce overhead for empty batches

Bug fixes:
Support both xTest and xTests as default class name
Close Bugsnag at the end to prevent hanging due to internal thread pool
Fix synchronization problem in the state machine and LogCat listeners
Fail build if a test failed in strict mode

Gradle plugin:
Fix fox 3.6.X Android Gradle Plugin

0.5.1

19 Sep 03:03
Compare
Choose a tag to compare

Reporting hotfix

0.5.0

11 Sep 08:26
Compare
Choose a tag to compare

Improvements:

  • Ignored test results from DdmLib with null method name #200
  • Increase max video duration from 60 to 180 seconds #204
  • Use DdmLib API to obtain external storage directory #205
  • Screenrecord workaround #207
  • InfluxMetricsProvider cache multiple sets of data #216
  • Skip installing/uninstalling APK if there are no tests after filters #221
  • AndroidDeviceTestRunner now checks if test contains the @Ignore #226
  • Basic @Parameterized support for Android #230
  • Always fail execution when no devices are connected #237
  • Fix wrong time and timestamp for ignored tests #240
  • Add uncompleted tests retry quota enhancement #247
  • Uncompleted tests should be reported in any case #267
  • Multiple health improvements #269

Configuration:

  • Add install options configuration #191
  • Feature/Add preferable recorder type config #190
  • Add support for configurable serial provider for Android #231
  • Add strict mode #236
  • Disallow custom flakiness + sharding #241
  • Allow to disable HostKey verification for iOS #265
  • Support include/exclude serial regex #246
  • Fix retention policy configuration in YAML #249

Gradle plugin improvements:

  • Ignore failures configuration fix #211 #256
  • Gradle plugin should mark output folder as Gradle task output enhancement #217

Docs:

  • Docs redesign #188

Other:

  • Refactor analytics #252
  • Tracker refactoring #209
  • Extract Sharding and Flakiness Strategies from DevicePoolActor #202
  • Remove NonNull annotations from kotlin class #206

0.4.1: Add install options configuration (#191)

22 Mar 03:40
Compare
Choose a tag to compare

Add preferable recorder type config (#190)
Add install options configuration (#191)

0.4.0

22 Feb 09:37
Compare
Choose a tag to compare

Features:
#178 Add support for clearing package data between batches for Android
#176 Reverse probability sorting
#125 Add visually device initialization time and device not healthy to timeline
#149 Print simple report in CLI
#137 Add Allure report
Bugfixes:
#134 Progress report is broken (shows more than 100%)
#170 CLI progress report is broken 0.3.5
#153 Marathon has to continue work if InfluxDB isn't available
#143 #144 CLI stuck
Improvements:
#157 Use lazy variants API from Android Gradle Plugin 3.3

0.3.5: Merge pull request #151 from Malinskiy/feature/ssh-stderr

10 Feb 16:12
7f49802
Compare
Choose a tag to compare