Skip to content

feat: Modernize test stack#320

Merged
mbudinsky merged 35 commits into
developfrom
feature/257-modernize-test-stack
Jan 27, 2026
Merged

feat: Modernize test stack#320
mbudinsky merged 35 commits into
developfrom
feature/257-modernize-test-stack

Conversation

@mbudinsky
Copy link
Copy Markdown
Contributor

@mbudinsky mbudinsky commented Jan 16, 2026

Closes #257 .
This PR implements the new E2E testing stack.

It separates the current testbed framework and runner/collector into self-contained, releasable packages, currently as part of the SDK monorepo.
The runner (mobile-test-runner) executes the TestSuite collections on device, and sends all test events as batched HTTP requests to the collector.

The collector (mobile-test-collector) is a Node-based server, able to run both locally and in CI.
All the batched events are sequentially processed and stored as various artifacts.

  • artifacts/e2e/junit.xml
  • artifacts/e2e/events.jsonl
    Also, all per-run events are stored in artifacts/e2e/runs/<run-UUID>/complete*events*run*.json

CI runs build both React NAtive and Cordova apps by-default.

React Native has been upgraded from 0.78.0to 0.82.1 in testapp. This requires to have Node 20+ installed.

Base usage is described in E2E-Tests.md root doc file.

@mbudinsky mbudinsky self-assigned this Jan 16, 2026
kober32
kober32 previously approved these changes Jan 20, 2026
Copy link
Copy Markdown
Member

@kober32 kober32 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very nice indeed 👏

Comment thread packages/mobile-test-reporter/src/http/HttpTestReporter.ts Outdated
Comment thread packages/mobile-test-reporter/src/protocol/types.ts Outdated
Comment thread testapp/_tests/testbed/EmptyTestSuite.ts
Comment thread testapp/android/app/src/main/AndroidManifest.xml
Comment thread packages/mobile-testbed/src/private/ErrorHelper.ts Outdated
Comment thread testapp/metro.config.js
Comment thread packages/mobile-test-reporter/src/http/HttpTestReporter.ts Outdated
Comment thread packages/mobile-test-reporter/src/http/HttpTestReporter.ts Outdated
Comment thread packages/mobile-test-runner/src/cli.ts Outdated
Comment thread packages/mobile-test-runner/src/collector/helpers.ts
Comment thread packages/mobile-test-runner/src/collector/runCollector.ts Outdated
Copy link
Copy Markdown
Contributor

@marek-ch marek-ch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I totally respect the amount of work that has been done here @mbudinsky 👏 👏 👏
I would not have so much patience in my life to do this thing.
But please refactor the createServer function as it is just way too long in year 2026. (I swear, I'm not making this in purpose to request some changes, but long functions just trigger me and my terapeut says it's ok (spoiler alert - he is not JS developer :)

Copy link
Copy Markdown
Contributor

@marek-ch marek-ch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's perfect now! :)
Thanks for all the work, appreciate the parsing arguments functionality "abstraction".
Also the create server is much readable now.

@mbudinsky mbudinsky merged commit 0a0e96d into develop Jan 27, 2026
9 checks passed
@mbudinsky mbudinsky deleted the feature/257-modernize-test-stack branch January 27, 2026 21:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Modernize test stack

5 participants