RevenueCat / purchases-ios

In-app purchases and subscriptions made easy. Support for iOS, watchOS, tvOS, macOS, and visionOS.
https://www.revenuecat.com/
MIT License
2.22k stars 295 forks source link

Retry backend integration tests #3902

Closed joshdholtz closed 2 months ago

joshdholtz commented 2 months ago

This is "ready for review" but it requires https://github.com/RevenueCat/purchases-ios/pull/3833 to be merged into it first to fully pass

Motivation

Prevent the need to fully rerun all backend tests job when only a few flaky tests fail

Description

  1. Runs backend integration tests
    • Parses junit.xml for failed tests
    • Writes them to a file
  2. Runs new step in CircleCI
    • Looks at file for tests to re-run and only runs those tests
    • Merges new junit.xml into original junit.xml

The retry happens 4 times right now and will fail (raise an error) if there are any left over tests that never ended up passing

RevenueCat-Danger-Bot commented 2 months ago
1 Message
:book: Size increase: 14.43 KB

Generated by :no_entry_sign: Danger