Description
We've set up Bugsnag in our UI tests to report failures to a central place and track crashes that cause random failures / flaky tests in CI. We call Bugsnag.notify() to report those.
Unfortunately, Bugsnag.notify() is async by nature, so if the test finishes before the upload then the VM is killed and the app is uninstalled, so we sometimes never get crash reported. I fixed this with some reflection hack to reach into Bugsnag's internals for now.
Ideally, we'd either get a new Client.notifyBlocking() API, or a callback based API to know when the provided throwable is done being uploaded.
Description
We've set up Bugsnag in our UI tests to report failures to a central place and track crashes that cause random failures / flaky tests in CI. We call Bugsnag.notify() to report those.
Unfortunately,
Bugsnag.notify()is async by nature, so if the test finishes before the upload then the VM is killed and the app is uninstalled, so we sometimes never get crash reported. I fixed this with some reflection hack to reach into Bugsnag's internals for now.Ideally, we'd either get a new
Client.notifyBlocking()API, or a callback based API to know when the provided throwable is done being uploaded.