Blockers while migrating from Coded UI to Windows Appium + WinAppDriver for UWP project

Hi,

For a UWP application, we developed a Coded UI test project to test its UI functionalities. Now since Coded UI is about to be deprecated by 2019, we are planning to migrate from Coded UI to Appium + WinAppDriver.

But when I do so, I face the following issues:

  1. Controls without Automation Id - In Coded UI, I used to find the parent control which has Automation Id and navigate to its child even though it does not have Automation Id. Wanted to know if Appium supports such hierarchical approach. As of now in Appium, i use only Automation Id to find a control. Could not use Class since there many controls within the same class and could not use Name since we need to test the same control for 26 different languages.

  2. Controls with same automation Id - In Coded UI, we used to have hierarchy as well as instances to overcome this problem but in Appium, its fetching only the first control again and again.

  3. Combo Box navigation - A combo box/ dropdown which has Automation ID is identified but we are unable to navigate or select the items present within the comboBox since the items does not have any Automation Id.

Kindly help me solve these issues. Thanks in advance.

Also I would like to know, whether can we validate other apps/ browsers using Appium?

For example: Clicking a button on my application will open a browser and we need to check if the URL is correct or it opens another windows application and we need to check if the correct application is being opened? then naviagate back to our application? Are these validations possible using Appium?

This can be achieved with the following approach:
driver.findElementByAccesbilityId(“known_automaiton_id”).findElement(By.xpath(“child locator in the form of XPath”))

Please provide more information on this. I am trying to understand.

Does it have a className?