Skip to content

Conversation

ifernandezdiaz
Copy link
Contributor

🎟️ Tracking

📔 Objective

This PR streamlines and enhances our CI/CD pipeline by allowing the execution of sanity checks on real devices in our main build workflow.
It includes all necessary setup, secret retrieval, and artifact management to support E2E testing against real devices using SauceLabs.

📸 Screenshots

⏰ Reminders before review

  • Contributor guidelines followed
  • All formatters and local linters executed and passed
  • Written new unit and / or integration tests where applicable
  • Protected functional changes with optionality (feature flags)
  • Used internationalization (i18n) for all UI strings
  • CI builds passed
  • Communicated to DevOps any deployment requirements
  • Updated any necessary documentation (Confluence, contributing docs) or informed the documentation team

🦮 Reviewer guidelines

  • 👍 (:+1:) or similar for great changes
  • 📝 (:memo:) or ℹ️ (:information_source:) for notes or general info
  • ❓ (:question:) for questions
  • 🤔 (:thinking:) or 💭 (:thought_balloon:) for more open inquiry that's not quite a confirmed issue and could potentially benefit from discussion
  • 🎨 (:art:) for suggestions / improvements
  • ❌ (:x:) or ⚠️ (:warning:) for more significant problems or concerns needing attention
  • 🌱 (:seedling:) or ♻️ (:recycle:) for future improvements or indications of technical debt
  • ⛏ (:pick:) for minor or nitpick changes

Copy link
Contributor

github-actions bot commented Jul 14, 2025

Logo
Checkmarx One – Scan Summary & Details8f5be668-fe65-4139-9986-182259bb6929

Great job! No new security vulnerabilities introduced in this pull request

@ifernandezdiaz ifernandezdiaz force-pushed the QA-1126b/adding-native-sanity-test branch from c6058a3 to 62b9088 Compare July 15, 2025 15:47
Copy link

codecov bot commented Jul 18, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 83.86%. Comparing base (c613c2d) to head (da9b60f).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #5526   +/-   ##
=======================================
  Coverage   83.86%   83.86%           
=======================================
  Files         695      698    +3     
  Lines       52858    52914   +56     
  Branches     7272     7277    +5     
=======================================
+ Hits        44329    44377   +48     
- Misses       5985     5991    +6     
- Partials     2544     2546    +2     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Contributor

@SaintPatrck SaintPatrck left a comment

Choose a reason for hiding this comment

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

Can the androidTest files be put in com.x8bit.bitwarden.* packages? I.e., com.x8bit.bitwarden.data.TestData.kt and com.x8bit.bitwarden.e2e.*.

Comment on lines +253 to +256
implementation(libs.androidx.uiautomator)
implementation(libs.androidx.espresso.core)
implementation(libs.androidx.junit.ktx)
implementation(libs.androidx.ui.test.junit4.android)
Copy link
Contributor

Choose a reason for hiding this comment

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

Can we remove these as implementation dependencies?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

For some reason, the build fails if I remove those dependencies 🤔

Copy link
Collaborator

Choose a reason for hiding this comment

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

I think he want's them to be an androidTestImplementation to avoid having these test dependencies in the non-test builds

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yeah, but those deps are already present as androidTestImplementation in lines 302-306.
Apart from that, we need those deps in non-test builds since we aim to test the release build on real devices

Copy link
Collaborator

Choose a reason for hiding this comment

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

🤔 We do not want to ship with unnecessary dependencies like this. Is there a specific error you are seeing?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I couldn't find a way to build the required testApp without those deps 🫤

Copy link
Collaborator

Choose a reason for hiding this comment

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

Maybe we need a new variant for this.

@vvolkgang vvolkgang force-pushed the QA-1126b/adding-native-sanity-test branch from 1f61ab4 to a4b464c Compare July 31, 2025 16:31
@vvolkgang vvolkgang force-pushed the QA-1126b/adding-native-sanity-test branch from a4b464c to f803752 Compare July 31, 2025 16:32
@ifernandezdiaz ifernandezdiaz force-pushed the QA-1126b/adding-native-sanity-test branch from 7d32d32 to bb8dda4 Compare August 4, 2025 17:48
# Keep Kotlin standard library classes
-keep class kotlin.** { *; }
-keep class kotlinx.** { *; }
-keep class kotlin.io.** { *; }
Copy link
Collaborator

@david-livefront david-livefront Aug 4, 2025

Choose a reason for hiding this comment

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

Why do we need this?

Are we obfuscating test code?

@ifernandezdiaz ifernandezdiaz force-pushed the QA-1126b/adding-native-sanity-test branch from eabd248 to 2cb6a6a Compare August 8, 2025 15:52
@ifernandezdiaz ifernandezdiaz force-pushed the QA-1126b/adding-native-sanity-test branch from 2cb6a6a to da9b60f Compare August 8, 2025 16:57
@vvolkgang vvolkgang marked this pull request as draft September 4, 2025 16:48
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