Пример #1
0
        // Get list of child elements based on selector from parent and return element in index
        public static AndroidElement GetChildElementFromList(AndroidElement parent, SelectBy by, string selector, int index)
        {
            AndroidElement e = null;

            switch (by)
            {
            case SelectBy.ID:
                e = (AndroidElement)parent.FindElementsById(selector)[index];
                break;

            case SelectBy.Class:
                e = (AndroidElement)parent.FindElementsByClassName(selector)[index];
                break;

            case SelectBy.XPath:
                e = (AndroidElement)parent.FindElementsByXPath(selector)[index];
                break;

            case SelectBy.ExactText:
                e = (AndroidElement)parent.FindElementsByAndroidUIAutomator(String.Format("new UiSelector().text(\"{0}\")", selector)).ElementAt(index);
                break;

            case SelectBy.ContainsText:
                e = (AndroidElement)parent.FindElementsByAndroidUIAutomator(String.Format("new UiSelector().textContains(\"{0}\")", selector)).ElementAt(index);
                break;

            case SelectBy.RegexText:
                e = (AndroidElement)parent.FindElementsByAndroidUIAutomator(String.Format("new UiSelector().textMatches(\"{0}\")", selector)).ElementAt(index);
                break;
            }
            return(e ?? throw new NotFoundException("Child with selector " + selector + " not found."));
        }
Пример #2
0
 public ReadOnlyCollection <AppiumWebElement> GetElementsByIdNoWaiting(AndroidElement parentElement, string id, bool errorNone)
 {
     try
     {
         return((ReadOnlyCollection <AppiumWebElement>)parentElement.FindElementsById(id));
     }
     catch (Exception ex)
     {
         if (errorNone)
         {
             throw ex;
         }
         else
         {
             return(null);
         }
     }
 }