Skip to content

Releases: avito-tech/Emcee

21.7.0

20 Dec 09:58
711d511
Compare
Choose a tag to compare

What's Changed

iOS

  • Artifacts for xctestrun (derived from Xcode Test Plan) configurations are now prepared quickly

Crossplatform

  • Fixed bug when queue service might suddenly lose a bucket due to worker restart
  • It's now possible to use env variables expansion in emceeplan file for sensitive data like password for artifactory user

21.6.0

04 Dec 12:56
21.6.0
Compare
Choose a tag to compare

What's Changed

iOS

  • Self-deployment via ssh became more stable

Android

  • Added new filters and added ability to include or exclude tests by filters. Read more.
    Breaking changes: the filters structure in the clients has changed a little bit.
  • Added new metrics and updated existing metrics. Now you can measure adb operation time/statuses and measure network operations more accurate. See table with all metrics
  • Updated timeouts for internal adb operations
  • Updated Android emulator version to 35.2.10
  • Added internal bugfixes

21.5.0

16 Oct 13:55
Compare
Choose a tag to compare

What's Changed

Crossplatform

  • We reworked how our users deal with enterprise support. Now we distribute a single application that accepts license keys. You're encouraged to contact your manager to migrate on new licensing. Learn more.

iOS

Now you may setup simulator gracefully before running tests via

  • classified settings (that our old users may familiar with), learn more
  • running plain scripts on worker host, take a look on our playbook

Android

  • Added internal improvements, such as debug/info/critical logs rework, timeouts updates, etc
  • Added Kaspresso adb-server. Now you can enable this server inside worker via worker environment variable (read about env name here)
  • Added worker self-check scripts for better debugging. Read more
  • Added info in documentation about ability to customize worker emulators. You can replace default emulators by your own. Read more
  • Added docker image with preconfigured Artifactory instance. Now you can use this image to avoid first Artifactory setup because this instance contains ready for use user. Read more

21.4.0

27 Sep 11:59
Compare
Choose a tag to compare

What's Changed

iOS

  • Added Xcode 16 support

21.3.0

12 Sep 07:55
21.3.0
Compare
Choose a tag to compare

What's Changed

Android

  • Added annotation filter to cli-tool. Now you can filter tests by annotation names when you launch tests run via cli
  • Fixed dynamic emulator creation when SDK 27 was selected

21.2.1

09 Sep 10:46
21.2.1
0752ae6
Compare
Choose a tag to compare

What's Changed

Android

  • Hotfix. Fixed dynamic emulator screen params for cli-tool. Now it is possible to setup screen resolution and density for dynamic emulator via cli-tool

21.2.0

03 Sep 15:03
21.2.0
4fe18c5
Compare
Choose a tag to compare

What's Changed

Android

  • Added new feature - dynamic emulators. Now you can configure and reuse emulators with desired screen resolution and density. For example, now it is possible to use emulator with full hd resolution and 440 dpi density.
    Read more here
  • Fixed bug that occurred when test execution was interrupted by a timeout, resulting in the screen recording not being downloaded
  • Fixed bug with "device offline" message that sometimes happened while device booting
  • The process of archiving tests artifacts has been optimized
  • Improved documentation
  • Added Android SDK 33 to worker and removed 24

21.1.0

22 Jul 15:30
Compare
Choose a tag to compare

What's Changed

iOS

  • Xcode Test Plans are now supported in emceeplan. Learn more
  • we parse more errors from XCResult and enrich reports with them

Android

  • added new feature with ability to download artifacts from device custom directory on each run
  • added clients network calls retry on bad responses
  • made worker more stable and robust - now most unexpected errors converts to tests errors and not to workers crashes. It will give faster feedback loop for the users
  • updated internal dependencies, such as Kotlin, Coroutines, etc.

21.0.0

30 May 11:32
Compare
Choose a tag to compare

What's Changed

This release we focused on rethinking how users run tests on-premise on our main platforms. For some time, it's been implemented differently on iOS and Android. Most iOS users tended to use simplified approach conveying tests arguments in command line rather than using a file-based approach with distinct queue configuration and test-arg-file. It led to messy scripts in CI and extra complexity for new users. On the other hand, Android users employed a declarative approach using emceeplan file. We reworked emceeplan config to match needs of all our focus platforms, made it platform agnostic(almost) with simplified configuration ready to work from scratch.

Meet new major Emcee release:

  • emceeplan file format reworked to support both iOS and Android platforms similar way, a lot of test parameters are shared between platforms
  • documentation and guides are reworked to match these changes, find more
  • install Emcee using Homebrew, learn how

as well as changes in core Emcee technology:

Crossplatform

  • queue now uses Vapor web server that brings stability and performance
  • queue sends time consumption analytics for requests on all endpoint

iOS

  • to prevent system overwhelming every test exception reason is now limited to 10kb

Android

  • added new worker metrics. See Android worker metrics doc for more info
  • added new failed tests retry strategy retryOnWorker - now it is possible to retry failed test on the same worker
  • added ability to configure tests split strategy in emceeplan. Default strategy is timeWeighted
  • Android emulator updated to version 33.1.24
  • there is Mac OS demo mode. Now it is possible to run whole Emcee system for Android tests on the Mac (for demonstration only)
  • added JUnit report generation
  • updated Gradle version to 8.5 and Kotlin version to 1.9.20 in clients

20.2.0

01 Mar 06:26
Compare
Choose a tag to compare

What's Changed

Crossplatform

  • Meet test history service! It tracks test results and time consumption for individual tests and allows other services to use this information to optimally schedule new test run. See more in doc (iOS, Android)
  • There is a new timeWeighted test splitter that works hand in hand with test history service and provides the shortest possible time for entire test run. See more in doc (iOS, Android)

iOS

  • Minimal supported target is macOS 12.0
  • Get chrome tracing for the entire test run by using --trace option. See more in emceeFree runTests --help

Android

  • Added readable Artifactory uploading error description
  • Fixed possible crash in clients because of redundant internal checks
  • Fixed possible zero test time bug
  • Added check for desired sdk version before test run start
  • Added fix for endless CLI process after test run
  • Updated internal emulators version to 33.0.2. Other internal tools were also updated
  • Added timeout for emulator boot complete
  • Fixed wrong test result when test ended instantly