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

Update boilerplate #185

Merged
merged 18 commits into from
Jan 7, 2024
Merged

Update boilerplate #185

merged 18 commits into from
Jan 7, 2024

Conversation

wswebcreation
Copy link
Member

@wswebcreation wswebcreation commented Jan 1, 2024

This PR updates the appium-boilerplate with:

  • Generic:
    • updated Webview logic including detailed explanation of "best practices"
    • updated Gestures class with driver.action and detailed explanation of "best practices"
    • replaced deprecated driver.reset() with custom method that calls terminateApp and activateApp'|launchApp'
    • fixed page objects and tests
    • updated docs
    • updated configs
    • updated apps
  • Android:
    • update biometrics workflow to automatically enable fingerprint on Android 9-14 emulators
    • dropped support for Android 7 and 8
    • improve text matching for UiSelector
  • iOS:
    • fix biometrics
    • fix deeplinks
    • fix webview xpaths

Checked:

  • Android App:
    • app.tab.bar.navigation.spec.ts
    • app.deep.link.navigation.spec.ts
    • app.drag.and.drop.spec.ts
    • app.biometric.login.spec.ts
    • app.forms.spec.ts
      • On Android the text of the switch is empty, verify why
    • app.login.spec.ts
    • app.swipe.spec.ts
      • Fix and explain custom methods
      • Create "native" gesture examples
    • app.webview.spec.ts
    • app.webview.xpath.spec.ts
  • Android Browser:
    • browser.checkbox.spec.ts
    • browser.dynamic.spec.ts
    • browser.form.spec.ts
  • iOS App:
    • app.tab.bar.navigation.spec.ts
    • app.deep.link.navigation.spec.ts
    • app.drag.and.drop.spec.ts
    • app.biometric.login.spec.ts
    • app.forms.spec.ts
    • app.login.spec.ts
    • app.swipe.spec.ts
      • Fix and explain custom methods
      • Create "native" gesture examples
    • app.webview.spec.ts
    • app.webview.xpath.spec.ts
  • iOS Browser:
    • browser.checkbox.spec.ts
    • browser.dynamic.spec.ts
    • browser.form.spec.ts

@christian-bromann
Copy link
Member

I merged the PRs that added e2e tests for all environments. They are disabled at the moment but it would be great to get them running to ensure we don't regress anywhere. If you think this are to much to maintain we can also remove them.

Great stuff, thanks a lot!

@wswebcreation
Copy link
Member Author

I’m fixing all tests now, will update some best practices and provide as much context for why people could do it this way to most of the tests.

When that is done I’ll look at the rest and will try to keep it stable 😂

@@ -1,36 +1,115 @@
import type { Context } from '@wdio/protocols';

export const CONTEXT_REF = {
Copy link
Member Author

Choose a reason for hiding this comment

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

@christian-bromann and @erwinheitzman

If you have time, can you please check if you can follow what I am trying to explain here? Webviews are complex and I want to make sure users understand them a bit better.

Copy link
Member

Choose a reason for hiding this comment

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

Very insightful, the documentation makes sense to me. I wonder if we can move some of it into the project docs. It would be cool to have a section on Mobile Testing and add these type of docs in them.

- improve text matching for UiSelector
- replace deprecated `reset` with a custom relaunch app method
- improved Android settings Fingerprint flow
- dropped support for Android 7 and 8
- explain which fields need to be changed in the configs to make it work locally
- fix page objects
- fix specs due to page object changes
- update readme
@wswebcreation wswebcreation marked this pull request as ready for review January 7, 2024 18:55
@wswebcreation wswebcreation merged commit 639d17a into main Jan 7, 2024
3 checks passed
@wswebcreation wswebcreation deleted the update-boilerplate branch January 7, 2024 19:41
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.

2 participants