Skip to content

Conversation

@piotr-iohk
Copy link
Collaborator

@piotr-iohk piotr-iohk commented Jul 31, 2025

Description

This PR introduces a GitHub Actions workflow for running end-to-end tests.
It can be triggered manually from the Actions UI or automatically on pull_request.

For now, it includes only a single test case:
Onboarding - Can start onboarding — mainly due to the current lack of testIDs in the app.

The e2e workflow:

To make the test work in the Android emulator environment I changed the Electrum server host to 10.0.2.2 (which maps to the host machine's 127.0.0.1 in the emulator).
It turns out that using 127.0.0.1 didn’t work after all in the GitHub Actions environment.
See: 53ba0a1 @ovitrif 🤷

Worked with b466ed9. 🎉

Future PRs will expand test coverage as more testIDs are added.

Preview

QA Notes

Workflow run manually several times to make sure it is stable.
See: https://github.com/synonymdev/bitkit-android/actions/workflows/e2e.yml

@piotr-iohk piotr-iohk self-assigned this Jul 31, 2025
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR introduces a comprehensive GitHub Actions workflow for end-to-end testing that builds the app with E2E configuration and runs automated tests against a regtest environment. The workflow can be triggered manually or automatically on pull requests.

  • Adds a complete e2e.yml workflow file with build and test jobs
  • Updates Electrum server host configuration from 127.0.0.1 to 10.0.2.2 for Android emulator compatibility
  • Implements APK build, regtest environment setup, and automated test execution with artifact collection on failure

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
.github/workflows/e2e.yml New comprehensive E2E workflow with build job, test environment setup, and automated testing
app/src/main/java/to/bitkit/env/Env.kt Updates E2E Electrum server host to work with Android emulator networking
Comments suppressed due to low confidence (1)

.github/workflows/e2e.yml:86

  • The actions/cache@v3 action is outdated. Consider upgrading to actions/cache@v4 for better performance and security updates.
        uses: actions/cache@v3

@ovitrif
Copy link
Collaborator

ovitrif commented Jul 31, 2025

It turns out that using 127.0.0.1 didn’t work after all in the GitHub Actions environment.
See: 53ba0a1 @ovitrif 🤷

So I am left wondering how could it work in the react native app 😱

PS. Wondering how will it work for LND, but I think we can also change from 0.0.0.0:9735 to 10.0.2.2:9735

ovitrif
ovitrif previously approved these changes Jul 31, 2025
jvsena42
jvsena42 previously approved these changes Jul 31, 2025
Copy link
Member

@jvsena42 jvsena42 left a comment

Choose a reason for hiding this comment

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

I suggest adding a filter to skip Draft pull request to save resources

ovitrif
ovitrif previously approved these changes Jul 31, 2025
Copy link
Collaborator

@ovitrif ovitrif left a comment

Choose a reason for hiding this comment

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

Nice 👏🏻

I like the adb reverse fix 👏🏻 , with it, connecting to the LND peer from docker container should also work smooth. (not sure if it works tho'

@piotr-iohk
Copy link
Collaborator Author

Nice 👏🏻

I like the adb reverse fix 👏🏻 , with it, connecting to the LND peer from docker container should also work smooth. (not sure if it works tho'

It worked indeed! 🎉

ovitrif
ovitrif previously approved these changes Jul 31, 2025
@piotr-iohk
Copy link
Collaborator Author

I suggest adding a filter to skip Draft pull request to save resources

Done. 👍

@jvsena42 jvsena42 merged commit cb39469 into master Aug 1, 2025
5 checks passed
@jvsena42 jvsena42 deleted the e2e-workflow-experiments branch August 1, 2025 09:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants