Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[13] Switch to GitHub actions for E2E tests #577

Closed
wants to merge 3 commits into from

Conversation

stevesoltys
Copy link
Member

#569 but for android-13.

.github/workflows/test.yml Outdated Show resolved Hide resolved
@@ -14,5 +14,11 @@ object BackupScreen : UiDeviceScreen<BackupScreen>() {

val backupLocationButton = findObject { text("Backup location") }

val backupSwitch = findObject { text("Backup my apps") }

val internalStorageButton = findObject { textContains("Android SDK built for") }
Copy link
Collaborator

Choose a reason for hiding this comment

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

maybe nice to use the viewID or something more generic here, so it will work on different devices as well.

Copy link
Member Author

@stevesoltys stevesoltys Oct 11, 2023

Choose a reason for hiding this comment

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

Agreed, but for some reason I couldn't get any elements selected by resource id.

Struggled with it for a long time before giving up for now.

Copy link
Member Author

@stevesoltys stevesoltys Oct 11, 2023

Choose a reason for hiding this comment

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

i.e.:

val internalStorageButton = findObject {
  resourceIdMatches(".*titleView.*")
}

or any combination of this just ... doesn't work 😞

assert(!restoreResultValue.hasFailed) { "Failed to install packages" }
// TODO: Fix this, with current test an app or two breaks on install with AOSP image.
// Just need to update the test data to work with the AOSP image.
// assert(!restoreResultValue.hasFailed) { "Failed to install packages" }
Copy link
Collaborator

Choose a reason for hiding this comment

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

We should find out why this is failing.

Copy link
Member Author

Choose a reason for hiding this comment

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

I've added support for uploading logcat logs along with the screen recordings. The error is:

10-11 01:53:53.696  1974  1974 D ApkInstaller: Received result for org.torproject.torbrowser: success=false INSTALL_FAILED_NO_MATCHING_ABIS: INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113

Copy link
Member Author

Choose a reason for hiding this comment

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

And for the second package the same thing:

10-11 01:53:50.877  1974  1974 D ApkInstaller: Received result for org.ca.squawker: success=false INSTALL_FAILED_NO_MATCHING_ABIS: INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113

Copy link
Member Author

@stevesoltys stevesoltys Oct 11, 2023

Choose a reason for hiding this comment

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

The backups were taken on google_apis emulators with x86_64 architecture, so that's a bit confusing!

Copy link
Collaborator

Choose a reason for hiding this comment

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

Could it be that the backup used a different architecture and not a universal APK? So if the APK had only arm binaries and now we are on x86, the errors would be expected.

@@ -30,3 +30,6 @@ $ADB push $ROOT_PROJECT_DIR/app/build/outputs/apk/release/app-release.apk /syste
echo "Installing Seedvault permissions..."
$ADB push $ROOT_PROJECT_DIR/permissions_com.stevesoltys.seedvault.xml /system/etc/permissions/privapp-permissions-seedvault.xml
$ADB push $ROOT_PROJECT_DIR/allowlist_com.stevesoltys.seedvault.xml /system/etc/sysconfig/allowlist-seedvault.xml

echo "Setting Seedvault transport..."
$ADB shell bmgr transport com.stevesoltys.seedvault.transport.ConfigurableBackupTransport
Copy link
Collaborator

Choose a reason for hiding this comment

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

Normally, the system did this itself, but now I am also seeing that this doesn't seem to work anymore on 14. Not sure why.

Copy link
Member

Choose a reason for hiding this comment

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

There's an OS patch for this. It's still pending a port.

@chirayudesai
Copy link
Member

Should pick #580

@grote grote mentioned this pull request Oct 12, 2023
@grote
Copy link
Collaborator

grote commented Oct 17, 2023

can this be closed then? in favor of #582 ?

@chirayudesai
Copy link
Member

chirayudesai commented Oct 17, 2023

can this be closed then? in favor of #582 ?

No, because this #577 is android13.

It should be updated with all the improvements when ready.

Edit: I say that just to have less confusing history and differences between the two - the only things missing in 13 should be 14-only changes, ideally.

@chirayudesai chirayudesai changed the title Switch to GitHub actions for E2E tests [13] Switch to GitHub actions for E2E tests Oct 17, 2023
@chirayudesai
Copy link
Member

We aren't maintaining 13 anymore, so I'm closing this.

@chirayudesai chirayudesai deleted the feature/github-e2e-tests-13 branch April 16, 2024 13:02
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.

3 participants