Как щелкнуть определенный элемент в приложении для Android?

  1. Я предоставил полную информацию об элементах локатора, которые я получил от инспектора appium для приложения Android.

  2. Я использовал текст «КАТЕГОРИИ» в качестве имени и тип «android.widget.TextView» в качестве className и xpath = «/ android.widget.TextView [1]» в своих тестовых примерах.

  3. Это возможности, которые я пробовал. Но для меня действие щелчка не происходит.

  4. # P4 #
    # P5 # # P6 #

person selvi    schedule 05.05.2015    source источник


Ответы (2)


Попробуйте щелкнуть элемент, используя путь:

Образец кода

self.driver.find_element_by_xpath('//UIAApplication[1]/UIAWindow[2]/UIASecureTextField[1]').click()

Я использую python, если вы используете любой другой языковой код, синтаксис может немного отличаться

person krishna chetan    schedule 05.05.2015
comment
используйте этот код: driver.findElementsByxpath (/android.widget.LinearLayout [1] /android.widget.FrameLayout [1] /android.widget.RelativeLayout [1] /android.support.v4.widget.SlidingPaneLayout [1] / android .widget.RelativeLayout [1] /android.widget.RelativeLayout [1] /android.support.v4.view.ViewPager [1] /android.widget.LinearLayout [1] /android.widget.LinearLayout [1] / android. widget.RelativeLayout [1] /android.widget.TextView [1]). click () - person krishna chetan; 05.05.2015
comment
не могли бы вы поделиться снимком инспектора? - person Gaurav; 05.05.2015

Вы упомянули, что пробовали, и click () не работает. Я бы предложил решение ниже:

Решение 1 -

  • Вы должны проверить и подтвердить, имеет ли этот элемент свойство clickable = TRUE [Если этот элемент доступен для кликов, перейдите к следующему решению]

Решение 2 -

  • driver.findElement (By.xpath ("// android.widget.TextView [@ text = 'CATEGORIES']")). click ();
  • driver.findElement (By.xpath ("// android.widget.TextView [содержит (@ text, 'CATEGORIES'])")). click ();
  • driver.findElement (By.xpath ("// android.widget.TextView [содержит (@ text, 'КАТЕГОРИИ'] и @ index = '1')")). click ();
person Narendra Chandratre    schedule 30.06.2016