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

[Testing] Enabling ported UITests from Xamarin.UITests to Appium - 17 #26081

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

anandhan-rajagopal
Copy link
Contributor

Description of Change

This PR focuses on re-enabling and updating following tests from the Xamarin.UITest framework to be compatible with Appium. The tests, previously commented out, are reviewed, and modified to ensure they are functional with the Appium framework. We are going to enable tests in blocks in different PRs. This is the 17th group of tests enabled.

Add Helper Extension Methods for Flyout Navigation

Description

This PR introduces two new helper extension methods to simplify Flyout navigation in UI tests across different platforms:

  1. TapFlyoutIcon: Simulates tapping the Flyout icon to open the Flyout page.
  2. TapInFlyout: Combines opening the Flyout and tapping a specific item within it.

TestCases

  • Issue6784
  • Issue7339
  • Issue7856
  • Issue6184
  • Issue8145

* Migrated Flyout related Issues

* Revert "Migrated Flyout related Issues"

This reverts commit 8fbf985.

* Migrate the Flyout Issues into Appium

* Modify Issue 6184 and Issue 7856

* Updated the migrated code changes

* Addressed the review changes

* Added one more tab to ensure the more button visibility on windows

* Addressed the review changes

* Updated the comments

---------

Co-authored-by: NafeelaNazhir <[email protected]>
@anandhan-rajagopal anandhan-rajagopal requested a review from a team as a code owner November 23, 2024 17:03
@dotnet-policy-service dotnet-policy-service bot added the community ✨ Community Contribution label Nov 23, 2024
Copy link
Contributor

Hey there @anandhan-rajagopal! Thank you so much for your PR! Someone from the team will get assigned to your PR shortly and we'll get it reviewed.

@PureWeen
Copy link
Member

/azp run

Copy link

Azure Pipelines successfully started running 3 pipeline(s).

Comment on lines 60 to 72
},new Tab {
Title = "notme",
Items = {
new ContentPage { Title = "notme", Content = new Label { Text = "Click More, then choose the target. If it does not crash, this test has passed." } }
}
},new Tab {
Title = "notme",
Items = {
new ContentPage { Title = "notme", Content = new Label { Text = "Click More, then choose the target. If it does not crash, this test has passed." } }
}
},new Tab {
Title = "notme",
Items = {
Copy link

Choose a reason for hiding this comment

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

Maybe it's not that important in this case but why not just put it in a loop?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@OvrBtn Yes, that's a great idea! I've modified the code, and the changes have been committed.

Comment on lines 18 to 24
AddBottomTab("Tab 3");
AddBottomTab("Tab 4").AutomationId = "Tab 4 Content";
var contentPage5 = AddBottomTab("Tab 5");
AddBottomTab("Tab 5");
AddBottomTab("Tab 6");
AddBottomTab("Tab 7");
AddBottomTab("Tab 8");
AddBottomTab("Tab 9");
Copy link

Choose a reason for hiding this comment

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

Same here

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 have modified the code, and the changes have been committed.

[Test]
public void TwoMoreControllerDoesNotShowEditButton()
Copy link
Contributor

Choose a reason for hiding this comment

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

Failing on macOS:
image

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@jsuarezruiz This issue arises because Appium was able to locate the edit element from the app menu items in the top menu bar on macOS. I have added a condition to address this problem. Please review and share your feedback.

@anandhan-rajagopal anandhan-rajagopal added the area-testing Unit tests, device tests label Nov 26, 2024
@jsuarezruiz
Copy link
Contributor

Could you rebase and fix the conflicts? @anandhan-rajagopal

@anandhan-rajagopal
Copy link
Contributor Author

Could you rebase and fix the conflicts? @anandhan-rajagopal

Resolved conflicts

@jsuarezruiz
Copy link
Contributor

/azp run

Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@jsuarezruiz
Copy link
Contributor

/azp run

Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@jsuarezruiz jsuarezruiz self-requested a review November 28, 2024 09:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-testing Unit tests, device tests community ✨ Community Contribution
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants